Bar code scanning system with wireless communication links

ABSTRACT

A code symbol reading device includes a portable housing that contains a source of optical energy. This optical energy is projected into a scan field external to the housing and is incident upon a code symbol situated on an object located within the scan field. Optical energy reflected off the code symbol is detected within the housing to produce scan data that is indicative of the detected optical energy. The scan data is processed to detect and decode the code symbol and to produce symbol character data that are representative of the decoded code symbol. A data packet utilizing the symbol character data is constructed and then used to modulate an electromagnetic carrier signal that is transmitted to a base unit. At the base unit, the carrier signal is demodulated and the data packet is recovered. The received data packet is processed to recover the symbol character data, and an acknowledgment signal is generated to acknowledge the receipt of the symbol character data at the base unit.

RELATED APPLICATIONS

[0001] This is a Continuation of patent application Ser. No. 09/346,859,filed on Jul. 2, 1999, which is a Continuation of patent applicationSer. No. 08/890,576 filed on Jul. 7, 1997, now issued as U.S. Pat. No.6,015,091 on Jan. 18, 2000, which is a Continuation-In-Part of patentapplication Ser. No. 07/898,919, filed Jun. 12, 1992, now issued as U.S.Pat. No. 5,340,973, patent application Ser. No. 07/761,123, filed Sep.17, 1991, now issued as U.S. Pat. No. 5,340,971, and patent applicationSer. No. 07/821,917, filed on Jan. 16, 1992, now abandoned, and aContinuation of patent application Ser. No. 08/292,237 filed on Aug. 17,1994, now issued as U.S. Pat. No. 5,808,284; said patent applicationSer. No. 07/761,123 being a Continuation-In-Part of patent applicationSer. No. 07/583,421, filed on Sep. 17, 1990, and now issued as U.S. Pat.No. 5,260,553.

BACKGROUND OF THE INVENTION

[0002] 1. Field of the Invention

[0003] The present invention relates generally to bar code symbolreading systems and, more specifically, to systems having one or morebase stations and one or more hand-held bar code symbol readers equippedto communicate with these base stations.

[0004] 2. Brief Description of the Prior Art

[0005] Bar code symbols have become widely used in many commercialenvironments including point-of-sale (POS) stations in retail stores andsupermarkets, inventory and document tracking, and diverse data controlapplications. To meet the growing demands of this technologicalinnovation, bar code symbol readers of various types have been developedfor scanning and decoding bar code symbol patterns, and for producingsymbol character data to be used as input in automated data processingsystems.

[0006] In general, prior art hand-held bar code symbol readers usinglaser scanning mechanisms can be classified into two major categories.The first category includes manually-actuated trigger-operated systemshaving lightweight laser scanners which can be held in a user's hand.

[0007] The user positions the hand-held laser scanner at a specifieddistance from an object bearing a bar code symbol. Next, the usermanually activates the scanner to initiate reading, and then moves thescanner over other objects bearing bar code symbols to be read. Priorart bar code symbol readers illustrative of this first category aredisclosed in U.S. Pat. No. 4,387,297 to Swartz; U.S. Pat. No. 4,575,625to Knowles; U.S. Pat. No. 4,845,349 to Cherry; U.S. Pat. No. 4,825,057to Swartz, et al.; U.S. Pat. No. 4,903,848 to Knowles; U.S. Pat. No.5,107,100 to Shepard, et al.; U.S. Pat. No. 5,080,456 to Katz, et al.;and U.S. Pat. No. 5,047,617 to Shepard, et al.

[0008] The second category of hand-held laser-based bar code symbolreaders includes automatically actuated systems having lightweighttriggerless hand-held laser scanners which can be supported in the handof the user. The user positions the hand-held laser scanner at aspecified distance from the object bearing the bar code, whereupon thepresence of the object is automatically detected. The presence of thebar code symbol on the object is also detected, and thereafter thedetected bar code symbol automatically read. Prior art illustrative ofthis second category of laser-based bar code symbol reading systems aredisclosed in U.S. Pat. No. 4,639,606 to Boles, et al., and U.S. Pat. No.4,933,538 to Heiman, et al.

[0009] Presently, there are basically two methods of interconnecting ahand-held laser-based bar code scanner to a base station which,depending on the particular application, may be either a controller, akeyboard-scanner interface device, or a central or host computer. Thefirst method of interconnection employs physical wiring between eachhand-held bar code scanner and an associated base unit. Typically, thephysical wiring is realized as flexible cord having a coiled structureto permit elongation as required during bar code symbol readingoperations.

[0010] A major drawback with bar code symbol reading systems using thephysical-wiring method of interconnection is that the movement of theportable hand-held laser scanning device is restricted by the overall(extended) length of the flexible cord. In many applications, such asproduct inventory, the use of such bar code symbol reading systems issimply unacceptable. The second method of interconnection employs a“wireless” electromagnetic communication link between each hand-held barcode scanner (or reader) and its associated base unit. Typically, theelectromagnetic communication link is established by transmitting andreceiving electromagnetic signals over the radio-frequency (RF) orinfra-red (IR) region of the electromagnetic spectrum.

[0011] Examples of such systems are disclosed in U.S. Pat. No. 4,418,277to Tremmel, et al. and U.S. Pat. No. 5,157,687 to Tymes, and in the U.S.Patents cited therein.

[0012] While prior art bar code symbol reading systems employing thewireless method of interconnection offer a marked degree of flexibilityover systems utilizing the physical wiring method, such systemsnevertheless suffer from a number of shortcomings and drawbacks. Inparticular, these systems require two-way packet communications whichinvolves the use of complex data communications protocols and a separatetransmitter and a receiver (i.e., transceiver) at each hand-held barcode symbol reader and base unit in the system. Typically, these datacommunications requirements increase the cost of manufacture of suchsystems, and substantially increase the electrical power consumed byeach hand-held bar code symbol reader.

[0013] Thus, there is a great need for a bar code symbol reading systemand method which overcomes the above-described shortcomings anddrawbacks without compromising system performance and versatility.

OBJECTS AND SUMMARY OF THE INVENTION

[0014] Accordingly, it is a primary object of the present invention toprovide a bar code symbol reading system having at least onehand-supportable bar code symbol reading device which, aftersuccessfully reading a code symbol, automatically constructs and thentransmits a data packet to a base unit positioned within the datatransmission range of the bar code symbol reading device.

[0015] It is another primary object of the invention to provide a barcode symbol reading system which, upon successful receipt of thetransmitted data packet and recovery of symbol character data therefrom,employs a base unit that generates an acoustical acknowledgment signal.This acknowledgment signal is perceptible to a user of the bar codesymbol reading device who is located within the data transmission rangethereof.

[0016] A further object of the present invention is to provide such asystem with one or more automatic (i.e., triggerless) hand-supportablelaser-based bar code symbol reading devices, each of which is capable ofautomatically transmitting data packets to its base unit aftersuccessfully reading a bar code symbol.

[0017] A further object of the present invention is to provide such abar code symbol reading system in which the hand-supportable bar codesymbol reading device can be used as a portable hand-supported laserscanner in an automatic hands-on mode of operation, or as a stationarylaser projection scanner in an automatic hands-free mode of operation.

[0018] A further object of the present invention is to provide such abar code symbol system, in which the base unit is adapted tomechanically support the hand-supportable bar code symbol reading devicein its automatic hands-free mode of operation.

[0019] A further object of the present invention is to provide such abar code symbol system in which the base unit contains a batteryrecharging device that automatically recharges batteries contained inthe hand-supportable device when the hand-supportable device issupported within the base unit.

[0020] It is another object of the present invention to provide such anautomatic bar code symbol reading system with a mode of operation thatpermits the user to automatically read one or more bar code symbols onone or more objects in a consecutive manner.

[0021] A further object of the present invention is to provide such anautomatic bar code symbol reading system, in which a plurality ofautomatic hand-supportable bar code symbol reading devices are used inconjunction with a plurality of base units, each of which is mated to aparticular bar code symbol reading device.

[0022] A further object of the present invention is to provide such anautomatic bar code symbol reading system, in which radio frequency (RF)carrier signals of the same frequency are used by each hand-supportablebar code symbol reading device to transmit data packets to respectivebase units.

[0023] A further object of the present invention is to provide such anautomatic bar code symbol reading system, in which a novel data packettransmission and reception scheme is used to minimize the occurrence ofdata packet interference at each base unit during data packet reception.

[0024] A further object of the present invention is to provide such anautomatic bar code symbol reading system, in which the novel data packettransmission and reception scheme enables each base unit to distinguishdata packets associated with consecutively different bar code symbolsread by a particular bar code symbol reading device, without thetransmission of electromagnetically-based data packet acknowledgmentsignals after receiving each data packet at the base unit.

[0025] A further object is to provide such an automatic bar code symbolreading device, in which the automatic hand-supportable bar code(symbol) reading device has an infrared (IR) based object detectionfield which spatially encompasses at least a portion of its visiblelaser light scan field along the operative scanning range of the device,thereby improving the laser beam pointing efficiency of the deviceduring the automatic bar code reading process of the present invention.

[0026] Another object of the present invention is to provide such anautomatic bar code symbol reading system, in which the base unit has asupport frame that supports the hand-supportable housing of the devicein a selected mounting position, and permits complete gripping of thehandle portion of the hand-supportable housing prior to removing it fromthe support frame.

[0027] A further object of the present invention is to provide such anautomatic bar code symbol reading system, in which the hand-supportablebar code reading device has long and short-range modes of objectdetection, bar code symbol detection and/or bar code symbol reading. Thelong and short range modes of object detection may be manually selectedby the user by way of manual activation of a switch on thehand-supportable housing of the device. In one illustrative embodiment,the long-range modes of object detection may be automatically selectedwhen the hand-supportable bar code reading device is placed within thesupport stand during the handsfree mode of operation. In thisembodiment, the short-range mode of object detection is automaticallyselected whenever the hand-supportable bar code reading device isremoved from the support stand and used in its hands-on mode ofoperation.

[0028] In another embodiment, the short range mode of bar code presencedetection may be automatically selected upon decoding a predesignatedbar code symbol preprogrammed to induce the short-range mode of bar codepresence detection. In the short-range mode of bar code presencedetection, the automatic bar code reading device not only detects thepresence of a bar code within the scan field by analysis of collectedscan data, but it further processes the collected scan data to producedigital count data representative of the measured time interval betweenbar and/or space transitions. Bar code symbols that are present withinthe short range of the scan field will produce scan data having timeinterval characteristics falling within a prespecified timing datarange. Using the results of this analysis, only bar code symbols scannedwithin the short-range field are deemed “detected,” and only bar codesymbols detected within the short-range of the scan field activate thedecoding module of the device and thus enable bar code symbol reading.

[0029] A further object of the present invention is to provide such anautomatic bar code symbol reading system, in which the hand-supportablebar code reading device has long and short range modes of bar codesymbol reading within its scan field. In the short-range mode of barcode symbol reading, the only decoded bar code symbols residing withinthe short-range portion of the scan field, are deemed “read”.

[0030] Another object of the present invention is to provide anautomatic hand-supportable bar code reading device which has both longand short-range modes of object detection and bar code symbol readingthat are automatically selectable by placing the hand-supportable devicewithin its support stand and removing it therefrom. Pursuant to thisparticular embodiment of the present invention, the automatic bar codesymbol reading system can be used in various bar code symbol readingapplications, such as, for example, charge coupled device (CCD) scanneremulation and bar code “menu” reading in the hands-on short-range modeof operation, and counter-top projection scanning in the hands-freelong-range mode of operation.

[0031] An even further object of the present invention is to provide anautomatic hand-supportable bar code reading device which preventsmultiple reading of the same bar code symbol due to dwelling of thelaser scanning beam upon a bar code symbol for an extended period oftime.

[0032] A further object of the present invention is to provide apoint-of-sale station incorporating the automatic bar code symbolreading system of the present invention.

[0033] It is a further object of the present invention to provide anautomatic hand-supportable bar code reading device having a controlsystem which has a finite number of states through which the device maypass during its automatic operation, in response to diverse conditionsautomatically detected within the object detection and scan fields ofthe device.

[0034] It is yet a further object of the present invention to provide aportable, fully automatic bar code symbol reading system which iscompact, simple to use and versatile.

[0035] Yet a further object of the present invention is to provide anovel method of reading bar code symbols using an automatichand-supportable laser scanning device.

[0036] A further object of the present invention is to provide awireless automatic bar code symbol reading device having a housing thatcan be comfortably mounted to the wrist of its user, similar to a wristbracelet or a watch, and which can be reconfigured when not in use toprovide its user greater hand mobility.

[0037] A further object of the present invention is to provide such abar code symbol reading, in which the laser scanning plane thereofextends upwardly, downwardly, or laterally transverse to the pointingdirection of the wearer's hand on which the device is mounted.

[0038] A further object of the present invention is to provide such abar code symbol reading system, in which the base unit functions as a“desktop wedge” (i.e., keyboard interface device) for interfacing akeyboard and the bar code symbol reading device with a computer, so that“keyboard-scan formatted” data produced from the keyboard and the barcode reading device is identically formatted for entry into the computerthrough a single data input port, and subsequent processing therein.

[0039] A further object of the present invention is to provide adesk-top bar code symbol reading having a base unit with a small barcode symbol printing engine.

[0040] An even further object of the invention is to provide such a barcode reading system, in which the base unit is realized as a PCMCIA cardinstallable in the PCMCIA port of personal computer system, includingnotebook computers, palm top computers, personal digital assistantdevices, desk-top computers and the like.

[0041] A further object of the present invention is to provide apoint-of-sale station incorporating the automatic bar code symbolreading system of the present invention.

[0042] These and further objects of the present invention will becomeapparent hereinafter and in the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

[0043] For a fuller understanding of the Objects of the PresentInvention, the Detailed Description of the Illustrated Embodiments ofthe Present Invention should be read in conjunction with theaccompanying drawings, wherein:

[0044]FIG. 1 is a perspective view of a first illustrative embodiment ofthe automatic bar code symbol reading device of the present invention,shown supported within the scanner support stand portion of its matchingbase unit, for automatic hands-free operation;

[0045]FIG. 1A is an elevated front view of the automatic bar code symbolreading device of FIG. 1, shown supported within the scanner supportstand portion of its base unit;

[0046]FIG. 1B is a plan view of the automatic bar code symbol readingsystem shown in FIG. 1;

[0047]FIG. 1C is a bottom view of the automatic bar code symbol readingsystem shown in FIG. 1;

[0048]FIG. 2 is a perspective view of the first illustrative embodimentof the automatic hand supportable bar code symbol reading device of thepresent invention, demonstrated in the automatic hands-on mode ofoperation;

[0049]FIG. 2A is an elevated, cross-sectional side view taken along thelongitudinal extent of the automatic bar code symbol reading device ofFIG. 2, showing the various components contained therein, including theautomatic bar code symbol reading engine of the present invention;

[0050]FIG. 2B is a cross-sectional plan view taken along line 2B-2B ofFIG. 2A, showing the various components contained therein;

[0051]FIG. 3 is an elevated side view of the first illustrativeembodiment of the automatic bar code symbol reading device of thepresent invention, illustrating the spatial relationship between theobject detection and scan fields of the device, and the long andshort-ranges of programmed object detection, bar code presencedetection, and bar code symbol reading;

[0052]FIG. 3A is a plan view of the automatic bar code symbol readingdevice taken along line 3A-3A of FIG. 3;

[0053]FIG. 4 is a perspective view of a second illustrative embodimentof the automatic bar code symbol reading device of the presentinvention, shown mounted on the wrist of an operator with its object andscan fields extending along the pointing direction of the operator'shand during automatic hands-free operation;

[0054]FIG. 4A is an elevated, cross-sectional side view of the automaticbar code symbol reading device of FIG. 4, taken along the longitudinalextent thereof, while configured in its reading configuration, showingthe various components contained therein;

[0055]FIG. 4B is an elevated, cross-sectional side view of the automaticbar code symbol reading device of FIG. 4, taken along the longitudinalextent thereof, while configured in its non-reading configuration,showing the various components contained therein, including theautomatic bar code symbol reading engine of the present invention;

[0056]FIG. 5A is a perspective view of a third illustrative embodimentof the automatic bar code symbol reading device of the presentinvention, showing its wrist-mountable housing and the various systemcomponents contained therein;

[0057]FIG. 5B is a perspective view of the automatic bar code symbolreading device of FIG. 5A, shown mounted on the wrist of an operatorwith its object and scan fields extending laterally transverse to thepointing direction of the operator's hand during automatic hands-freeoperation;

[0058]FIG. 5C is a perspective view of the automatic bar code symbolreading device of FIG. 5A, shown mounted on the wrist of an operatorwith its object and scan fields extending upwardly transverse to thepointing direction of the operator's hand during automatic hands-freeoperation;

[0059]FIG. 5D is a perspective view of the automatic bar code symbolreading device of FIG. 5A, shown mounted on the wrist of an operatorwith its object and scan fields extending downwardly transverse to thepointing direction of the operator's hand during automatic hands-freeoperation;

[0060]FIG. 6A is a perspective view of a fourth illustrative embodimentof the automatic bar code symbol reading device of the presentinvention, shown supported in its rechargeable base unit, equipped witha bar code symbol printing engine connected thereto;

[0061]FIG. 6B is a cross-sectional view of the fourth illustrativeembodiment of the bar code symbol reading device, taken along line 6B-6Bof FIG. 6A, showing the device resting in its base unit: during abattery recharging operation;

[0062]FIG. 6C is a plan view of the fourth illustrative embodiment ofthe bar code symbol reading device of the present invention, shownreading a bar code symbol printed on a sheet of paper;

[0063]FIG. 6D is is a perspective view of the fourth illustrativeembodiment of the bar code symbol reading device of the presentinvention, shown reading a bar code symbol printed on a sheet of paperwhile in proximity with its mated base unit;

[0064]FIG. 7A is a perspective view of the automatic laser-based barcode symbol reading engine of the present invention, showing anillustrative miniature “match-box” size housing;

[0065]FIG. 7B is an elevated front view of the automatic bar code symbolreading engine of the present invention, showing illustrativegeometrical characteristics for its light transmission window;

[0066]FIG. 7C is an elevated rear view of the automatic bar code symbolreading engine of the present invention, showing its input/output signalport;

[0067]FIG. 7D is a perspective view of the automatic bar code symbolreading engine of the present invention, shown within the upper portionof the miniature match-box size housing removed from the lower housingportion thereof;

[0068]FIG. 7E is a plan view of the underside of the upper portion ofthe match-box size housing, showing the optical layout of the laser beamscanning optics of the device;

[0069]FIG. 7F is a perspective exploded view of the automatic bar codesymbol reading engine of the present invention, showing illustrativespatial relationships among the printed circuit boards, the upper andlower housing portions, and the laser beam scanning optics thereof;

[0070]FIG. 7G is a perspective exploded view of an alternativeembodiment of the automatic bar code symbol reading engine of thepresent invention, showing illustrative spatial relationships among theprinted circuit boards, including the printed board supporting the datapacket transmission circuit of the present invention.

[0071]FIG. 8 is a system block functional diagram of the automatic barcode symbol reading system of the present invention, illustrating theprincipal components integrated with the control (sub)system thereof;

[0072]FIG. 8A is a functional logic diagram of the system overridesignal detection circuit in the Application Specific Integrated Circuit(ASIC) chip in the automatic bar code symbol reading engine of thepresent invention;

[0073]FIG. 8B is a functional logic diagram of the oscillator circuit inthe ASIC chip in the automatic bar code symbol reading engine of thepresent invention;

[0074]FIG. 8C is a timing diagram for the oscillator circuit of FIG. 8B;

[0075]FIG. 8D is a block functional diagram of the object detectioncircuit (i.e., system activation mechanism) in the ASIC chip in theautomatic bar code symbol reading engine of the present invention;

[0076]FIG. 8E is a functional logic diagram of the first control circuit(C.sub.1) of the control system of the present invention;

[0077]FIG. 8F is a functional logic diagram of the clock divide circuitin the first control circuit C.sub.1 of FIG. 8E;

[0078]FIG. 8G is table setting forth Boolean logic expressions for theenabling signals produced by the first control circuit C.sub.1;

[0079]FIG. 8H is a functional block diagram of the analog to digital(A/D) signal conversion circuit in the ASIC chip in the bar code symbolreading engine of the present invention;

[0080]FIG. 8I is a functional logic diagram of the bar code symbol(Presence) detection circuit in the ASIC chip in the bar code symbolreading engine of the present invention;

[0081]FIG. 8J is a functional logic diagram of the clock divide circuitin the bar code symbol detection circuit of FIG. 8I;

[0082]FIG. 8K is a schematic representation of the time window andsubintervals maintained by the bar code symbol detection circuit duringthe bar code symbol detection process,

[0083]FIG. 8L is a functional logic diagram of the second controlcircuit (C.sub.2) in the ASIC chip in the automatic bar code symbolreading engine of the present invention;

[0084]FIG. 8M is Boolean logic table defining the functionalrelationships among the input and output signals into and out from thesecond control circuit C.sub.2 of FIG. 8N;

[0085]FIG. 8N is a schematic representation of the format of each datapacket transmitted from the data packet transmission circuit of FIG. 9.

[0086]FIG. 9 is a functional block diagram of the data packettransmission circuit of the bar code symbol reading system of thepresent invention;

[0087]FIG. 10 is a schematic representation illustrating several groupsof data packets transmitted from the bar code symbol reading devicehereof in accordance with the principles of data packet transmission andreception scheme of the present invention;

[0088]FIG. 11 is a schematic representation of an exemplary set ofgroups of data packet pseudo randomly transmitted from neighboring barcode symbol reading devices, and received at one base unit in physicalproximity therewith;

[0089]FIG. 12 is a schematic representation of an exemplary set of datapackets simultaneously transmitted from three neighboring bar codesymbol reading devices of the present invention, and received at theassociated base units assigned thereto;

[0090]FIGS. 13A to 13C, taken together, show a high level flow chart ofthe control process performed by the control subsystem of the bar codesymbol reading device, illustrating various modes of object detection,bar code presence detection and bar code symbol reading;

[0091]FIG. 14 is a state diagram illustrating the various states thatthe automatic hand-supportable bar code symbol reading device of theillustrative embodiment may undergo during the course of its programmedoperation;

[0092]FIG. 15A is a perspective view of the scanner support standhousing of the countertop base unit of the present invention;

[0093]FIG. 15B is a perspective view of the base plate portion of thecountertop base unit of the present invention;

[0094]FIG. 15C is a perspective, partially broken away view of theassembled countertop base unit of the present invention;

[0095]FIG. 16 is a functional block diagram of the data packet receivingand processing circuitry and the acknowledgment signal generatingcircuitry of the present invention realized on the printed circuit boardin the base unit shown in FIGS. 15A to 15C;

[0096]FIG. 16A is a functional block diagram of the radio receiversubcircuit of the data packet receiving circuit of FIG. 16;

[0097]FIG. 16B is a functional block diagram of the digitally controlledacoustical acknowledgment signal generating circuit of the presentinvention;

[0098]FIG. 17 is a flow chart illustrating the steps undertaken duringthe control process carried out in the base unit of FIG. 15C;

[0099]FIG. 18A is a perspective view of the portable data collectionbase unit of the present invention, interfaceable with a host computersystem for transferring symbol character data collected from the barcode symbol reading device of the present invention;

[0100]FIG. 18B is an elevated side view of the portable data collectionbase unit of the present invention;

[0101]FIG. 18C is an elevated end view of the portable data collectionbase unit the present invention;

[0102]FIG. 19 is a functional block diagram of the data packet receivingand processing circuit, the acknowledgment signal generating circuit andthe host computer interface circuit of the present invention, realizedaboard the printed circuit board in the portable data collection baseunit of the present invention;

[0103]FIGS. 20A to 20D together consist of a flow chart illustrating thesteps performed during the control process carried out within theportable data collection base unit of the present invention;

[0104]FIG. 21 is a perspective view of the PCMCIA card base unit of thepresent invention shown installed within the PCMCIA slot of a portablelap-top computer system;

[0105]FIG. 22 is a functional block diagram of the data packet receivingand processing circuit, the acknowledgment signal generating circuit,and host interface circuit realized on the printed PCMCIA circuit boardof the card-type base unit shown in FIG. 20;

[0106]FIG. 23 is a flow chart illustrating the steps performed duringthe control process conducted within the PCMCIA-card type base unitshown in FIG. 20;

[0107]FIG. 24A is a perspective view of the housing for the desktop baseunit of the present invention;

[0108]FIG. 24B is a perspective view of the base plate portion of thedesktop base unit of the present invention;

[0109]FIG. 24C is a perspective view of the assembled desktop base unitof the present invention, shown physically coupled to a bar code symbolprinting engine, and the serial communications port of a host computersystem;

[0110]FIG. 25 is a block functional diagram of the data packet receivingand processing circuit and the acknowledgment signal generating circuitrealized on the printed circuit board aboard the base unit shown in FIG.24C;

[0111]FIG. 26 is a flow chart illustrating the steps performed duringthe control process carried out within the desktop base unit of FIG.24C;

[0112]FIG. 27 is a perspective view of a desktop computer workstation,with which the desktop bar code symbol reading system of the presentinvention is installed;

[0113]FIG. 28A is a perspective view of the housing for thekeyboard-interface base unit of the present invention;

[0114]FIG. 28B is a perspective view of the base plate portion of thekeyboard-interface base unit of the present invention;

[0115]FIG. 28C is a perspective view of the assembled keyboard-interfacebase unit of the present invention, shown electrically interfaced withthe keyboard and serial communications port of a host computer system;

[0116]FIG. 29 is a block functional diagram of the data packet receivingand processing circuit, the acknowledgment signal generating circuit andthe keyboard/bar-code reader interface circuit realized on the printedcircuit board aboard the keyboard-interface base unit shown in FIG. 28C;

[0117]FIG. 30 is a flow chart illustrating the steps performed duringthe control process carried out within the keyboard-interface base unitof FIG. 28C;

[0118]FIGS. 31A to 31D are perspective views of a point-of-sale system,showing the countertop base unit of FIG. 15C supported on a horizontalcountertop surface and operably connected to an electronic cashregister, with the automatic hand-supportable bar code symbol readingdevice of FIG. 1 being used in its hand-held short-range mode ofoperation;

[0119]FIG. 32 is a perspective view of a point-of-sale station accordingto the present invention, showing the countertop base unit of FIG. 15Cpivotally supported above a horizontal counter surface by way of apedestal base mounted under an electronic cash register, and theautomatic hand-supportable bar code symbol reading device of FIG. 1received in the base unit while being used in its automatic “hands-free”long-range mode of operation; and

[0120]FIGS. 33A and 33B are perspective views of a point-of-sale stationaccording to the present invention, showing the counter-top base unit ofFIG. 15C pivotally supported above a horizontal counter surface by wayof a pedestal base, and the automatic hand-supportable bar code symbolreading device being used in its automatic “hands-on” short range modeof operation.

DETAILED DESCRIPTION OF THE ILLUSTRATIVE EMBODIMENTS OF THE PRESENTINVENTION

[0121] In FIGS. 1 to 6D, four different embodiments of the automatichand-supportable bar code symbol reading system of the present inventionare shown. FIGS. 1 to 3A illustrate a first embodiment of the automaticbar code symbol reading system. In FIGS. 4 to 4B, a second embodiment ofthe automatic bar code symbol reading system is shown. FIGS. 5 to 5Cillustrate a third embodiment of the automatic bar code symbol readingsystem. In FIGS. 6A to 6D, a fourth embodiment of the automatic bar codesymbol reading system is shown. For each of these systems, thehand-supportable bar code symbol reading device includes the automaticbar code symbol reading engine of the present invention as shown inFIGS. 7A to 7F and schematically illustrated in FIGS. 8 to 9. Theoperation of these embodiments of the automatic bar code symbol readingdevice of the present invention will now be described with reference toFIGS. 10 to 14.

[0122] As there are numerous possible embodiments of the automatic barcode symbol reading device of the present invention, there are alsonumerous possible embodiments of the base unit of the present invention.For exemplary purposes only, four illustrative embodiments of the baseunit are shown in FIGS. 15A to 26. In FIGS. 15A to 17, a firstembodiment of the base unit is illustrated. FIGS. 18A to 20D illustratea second embodiment of the base unit. In FIGS. 21A to 23, a thirdembodiment of the base unit is illustrated. FIGS. 24A to 26 show afourth embodiment of the base unit. In FIGS. 27 to 30, a fifthembodiment of the base unit is illustrated. Each of these illustrativeembodiments of the present invention will be described in greater detailhereinafter to enable one with ordinary skill in the art to practice thesame in diverse user environments.

[0123] As shown in FIGS. 1 to 2, automatic bar code symbol readingsystem 1 comprises an automatic (i.e., triggerless) portable bar code(symbol) reading device 2 operably associated with a base unit 3 havinga scanner support stand 4. Bar code symbol reading device 2 is operablycoupled with its base unit 3 by way of a one way electromagnetic link 5that is momentarily created between bar code symbol reading device 2 andits mated base unit 3 after the successful reading of each bar codesymbol by the bar code symbol reading device. Operable interconnectionbetween the base unit and a host computer system (e.g., electronic cashregister system, data collection device, etc.) 6 is achieved by aflexible multiwire communications cable 7 extending from the base unitand plugged directly into the the data-input communications port of thehost computer system 6. In the illustrative embodiment, electrical powerfrom a low voltage direct current (DC) power supply (not shown) isprovided to the base unit by way of a flexible power cable 8. Notably,this DC power supply can be realized in host computer system 6 or as aseparate DC power supply adapter insertable into a conventional 3-prong,117-volt AC electrical outlet. As will be described in greater detailhereinafter, a rechargeable battery power supply unit is contained withbar code symbol reading device 2 in order to power the electrical andelectro-optical components within the device.

[0124] As illustrated in FIGS. 1 through 1C, scanner support stand 4 isadapted for receiving and supporting portable bar code symbol readingdevice 2 in a selected position without user support, thus providing astationary, automatic hands-free mode of operation. In general, portablebar code reading device 2 includes a lightweight, hand-supportablehousing 9 having a contoured head portion 9A and a handle portion 9B. Aswill be described in greater detail hereinafter, head portion 9Aencloses electro-optical components which are used to generate andproject a visible laser beam 10 through a light transmissive window 11in housing head portion 9A, and to repeatedly scan the projected laserbeam across a scan field 12 defined external to the hand-supportablehousing.

[0125] As illustrated in FIGS. 1 through 1C, the scanner support standportion 3 includes a support frame which comprises a base portion 13A, ahead portion support structure 13B, a handle portion support structure13C and a finger accommodating recess 13D. As shown, base portion 13Ahas a longitudinal extent and is adapted for selective positioning withrespect to a support surface, e.g., countertop surface, counter wallsurface, etc. Head portion support structure 13B is connected to baseportion 13A, for receiving and supporting the head portion of bar codesymbol reading device 2. Similarly, handle portion support structure 13Cis connected to base portion 13A, for receiving and supporting thehandle portion of the code symbol reading device.

[0126] In order that the user's hand can completely grasp the handleportion of the hand-supportable bar code reading device, (i.e., prior toremoving it off and away from the scanner support stand), fingeraccommodating recess 13D is disposed between head and handle portionsupport structures 13B and 13C and above base portion 13A of the supportframe. In this way, finger accommodating recess 13D is laterallyaccessible so that when the head and handle portions 9A and 9B arereceived within and supported by head portion support structure andhandle portion support structure, respectively, the fingers of a user'shand can be inserted through finger accommodating recess 13D and cancompletely encircle the handle portion of the hand-supportable device.

[0127] As illustrated in FIGS. 2 through 2B in particular, head portion9A continuously extends into contoured handle portion 9B at an obtuseangle a which, in the illustrative embodiment, is about 146 degrees. Itis understood, however, that in other embodiments obtuse angle alpha.may be in the range of about 135 to about 180 degrees. As this ergonomichousing design is sculptured (i.e., form-fitted) to the human hand,automatic hands-on scanning is rendered as easy and effortless as wavingone's hand. Also, this ergonomic housing design reduces the risk ofmusculoskeletal disorders, such as carpal tunnel syndrome, which canresult from repeated biomechanical stress commonly associated withpointing prior art gun-shaped scanners at bar code symbols, squeezing atrigger to activate the laser scanning beam, and then releasing thetrigger.

[0128] As illustrated in FIGS. 2 through 3A, the head portion of housing9 has light transmission aperture 11 formed in upper portion of frontpanel 14A, to permit visible laser light to exit and enter the housing,as will be described in greater detail hereinafter. The lower portion offront panel 14B is optically opaque except at optical wavelengths overthe infra-red (IR) region of the electromagnetic spectrums, as are allother surfaces of the hand supportable housing.

[0129] As best shown in FIGS. 2A and 2B, the automatic bar code symbolreading engine 18 of the present invention is securely mounted withinthe head portion of hand-supportable housing 9, while a printed circuitboard 19 and a rechargeable battery supply unit 20 are mounted withinthe handle portion of the hand-supportable housing. As will be describedin greater detail hereinafter, the data packet transmission circuit ofthe present invention is realized on PC board 19 and is operablyconnected to bar code symbol reading engine 18 by way of a firstflexible wire harness 21, while electrical power is supplied fromrechargeable battery 20 to the data packet transmission circuit and thebar code symbol reading engine by way of a second flexible wire harness22. As shown, a transmitting antenna 23 is operably connected to thedata packet transmission circuit on PC board 19 and is mounted withinhand-supportable housing 9 for transmission of a data packet modulatedRF carrier signal. The structure and the functionalities of theautomatic bar code symbol reading engine will be described in greaterdetail hereinafter with reference to FIGS. 7A to 14.

[0130] As shown in FIGS. 4 to 4B, the second illustrative embodiment ofthe bar code symbol reading device, indicated by reference numeral 25comprises a wrist-mountable housing 26 having a head portion 26A with alight transmission window 27, and a tail portion 26B that is hingedlyconnected to the head portion 26B by way of a hinge mechanism 28. Asshown, housing tail portion 26B is mountable to the wrist of its user byway of a wrist band or strap 35 that may be made from one or moredifferent types of material. Also, an elastic gasket 29 is disposedabout the physical interface of the housing head portion and the housingtail portion in order to seal off the housing interior fromenvironmental debris, such as dust and the like.

[0131] As shown in FIGS. 4A and 4B, an automatic bar code symbol readingengine 18 is mounted within the head portion of the housing 26A, whereasa small PC board 30 and a miniature rechargeable battery supply unit 31are mounted within the tail portion of the housing 26B. The data packettransmission circuit of the present invention is realized on PC board30. Electrical power is provided from the battery supply unit 31 to PCboard 30 by way of a first flexible wire harness 32, and from PC board30 to bar code symbol reading engine 18 by way of a second flexible wireharness 33, as shown. In order to selectively connect and disconnect theflow of electrical power from PC board 30 to bar code symbol readingengine 18, a rotatable switch 34 associated with hinge mechanism 28 isconnected in series with the electrical power lines extending along thesecond wire harness. In this way, when housing head portion 26A andhousing tail portion 26B are both configured to extend in the same planeas shown in FIG. 4A, switch 34 is closed and electrical power ispermitted to flow from PC board 30 to the bar code symbol readingengine. When the housing head portion and housing tail portion areconfigured in slightly different planes, as shown in FIG. 4B, thenswitch 34 is opened and electrical power is prevented from flowing fromPC board 30 to the bar code symbol reading engine.

[0132] In general, bar code symbol reading device 25 can be used inconjunction with any of the base units of the present invention.However, in the preferred embodiment shown in FIG. 4, bar code symbolreading device 25 is used in conjunction with portable data collectionbase unit 37 in order to receive data packets that have been transmittedby the bar code symbol reading device upon the successful reading ofeach bar code symbol. The method of data packet transmission between thebar code symbol reading device and the portable base unit, will bedescribed in detail hereinafter.

[0133] As illustrated in FIGS. 5A to 5D, the third illustrativeembodiment of the bar code symbol reading device of the presentinvention indicated by reference numeral 40, comprises a U-shapedwrist-mountable housing 41 having an upper housing portion 41A, a lowerhousing portion 41B, and a C-shaped housing portion 41C connecting theupper and lower housing portions, as shown. In the illustrativeembodiment, each of these housing portions has a hollow interior ofvolumetric expanse which is laterally accessible by a side wall opening42 shown in FIG. 5A that is typically closed off by a U-shaped sidepanel 43 that snap fits over side wall opening 42. As shown, the frontside wall of the upper portion of the housing has a light aperturewindow 44 through which laser light is permitted to pass to and from abar code symbol reading engine 18 mounted within the interior of theupper portion of the U-shaped housing. A small PC board 45, on which thedata packet transmission circuit is realized, is mounted within theinterior of the C-shaped portion of the housing along with transmittingantenna 23, while a rechargeable battery power supply unit 46 is mountedwithin the interior of the lower portion of the housing, as shown inFIG. 5A. Electrical power is provided from battery supply unit 46 to PCboard 45 by way of a first flexible wire harness 48, and from PC board45 to the bar code symbol reading engine by way of a second flexiblewire harness 47. As shown, a first passageway 49 is provided between theinterior volume within the upper housing portion and the C-shapedhousing portion in order to permit wire harness 47 to extend between PCBoard 45 and the bar code symbol reading engine 18. Similarly, a secondpassageway 50 is provided between the lower housing portion and theC-shaped housing portion in order to permit wire harness 48 to extendbetween the battery supply unit 46 to PC board 45.

[0134] As shown in FIG. 5A, a flexible strap 51 extends from the bottomof the front panel of the upper portion of the housing and has a pieceof hook-type material 52 attached to the free end portion thereof. Apiece of loop-type material 53 is securely affixed to the bottom side ofthe lower portion of the housing. With such an arrangement, the free endof strap 51 can be fastened to the bottom side of the lower portion ofthe housing, and thus securely attach the housing to the wrist of theuser. Foam or cushioning material 54 can be used to line the interiorsurfaces of the housing in order to comfortably mount bar code readingdevice 40 on the wrist of its user.

[0135] In FIGS. 5B, 5C, and 5D three different wrist mountingarrangements are shown for bar code symbol reading device 40. As shownin FIG. 5B, the laser scan and object detection fields extend laterallytransverse to the pointing direction of the user's hand on which the barcode symbol reading device is mounted. With this laser scanningarrangement, the user reads a bar code symbol 55 on an object by eitherpresenting the bar code symbol to the light transmission window of thebar code symbol reading device, or by moving the light transmissionwindow of the bar code symbol reading device such that the laserscanning beam projects across the bar code symbol to be read. Thisscanning arrangement is advantageous in various applications where theuser desires to read a bar code symbol on a detected object that is notlocated along the natural pointing direction of the user's hand.

[0136] As shown in FIG. 5C, the laser scan and object detection fieldsextend upwardly transverse to the pointing direction of the user's handon which the bar code symbol reading device is mounted. This scanningarrangement is advantageous in various applications where the userdesires to read a bar code symbol 55 on a detected object 56 that is notlocated along the natural pointing direction of the user's hand orlaterally disposed thereto, as in FIG. 5B. With this alternativemounting arrangement, the user reads a bar code symbol by presenting thebar code symbol on the object to the object bearing the bar code symbol.

[0137] As shown in FIG. 5D, the laser scan and object detection fieldsextend downwardly transverse to toward the pointing direction of theuser's hand on which the bar code symbol reading device is mounted. Thisscanning arrangement is advantageous in various applications where theuser desires to read a bar code symbol 55 on a detected object 56 thatis not located along the pointing direction of the user's hand orlaterally disposed thereto, as in FIG. 5B. With this alternativemounting arrangement, the user reads a bar code symbol by presenting thebar code symbol on the object to light transmission window of the barcode symbol reading device.

[0138] In general, bar code symbol reading device 40 can be used inconjunction with any one of the base units of the present invention.However, in the preferred embodiment shown in FIG. 5B, bar code symbolreading device 40 is used in conjunction with portable computer system364, equipped with PCMCIA-card base unit 360. As will be described ingreater detail hereinafter, PCMCI-card base unit 360 is capable ofreceiving data packets transmitted from device 40 upon the successfulreading of each bar code symbol. The method of data packet transmissionand reception between bar code symbol reading device 40 and base unit360 will be described in detail hereinafter.

[0139] In FIGS. 6A to 6D, another embodiment of the bar code symbolreading system of the present invention is shown. In general, bar codesymbol reading system 60 comprises a base unit 61 operably connected toa bar code symbol printing engine 62, and a portable automatic bar codesymbol reading device 63. As shown, system 60 is interfaced with a hostcomputer system (e.g., desk-top computer) 64 by way of a serial datacommunications cable 65. An electrical power signal is provided to thebase unit by way of power cable 66, and is supplied to a primarytransformer 67, by way of PC board 68 and wires 69. As in the otherdescribed embodiments of the invention, the function of primaryinductive coil 67 is to inductively transfer electrical power to arechargeable battery 70 contained within the compact housing 71 of thebar code reading device when the base portion thereof is placed withinmatched recess 72 formed in the top portion of housing 73. Bar codesymbol printing engine 62 is provided so that the user can easily printbar code symbols on adhesive labels or the like, as desired, using aconventional bar code application program executed by the processor inthe host computer system and a suitable print driver program executed bythe processor within the base unit. The internal structure andfunctionalities of base unit 61 will be described in greater detailhereinafter.

[0140] As shown in FIG. 6B, the compact housing 71 of bar code symbolreading device has a wedge-like geometry when observed from its sideview and an oval-like geometry when observed along its plan view. Asshown in FIGS. 6A to 6D, a large eccentrically located “viewingaperture” 75 is formed through the entire housing of the device. As bestillustrated in FIG. 6D, the function of the viewing aperture is topermit the user to encircle a bar code symbol 76 within the viewingaperture while the bar code symbol is being viewed along the line ofsight 77 of the user. As shown in FIG. 6B, bar code symbol readingdevice 18 is disposed at an angle of about 45 to 60 degrees from theplaner base of the housing. A PC board 78 supporting the data packettransmission circuit of the present invention and the like is disposedbelow the engine and above rechargeable battery unit 70. As such, thelaser scanning plane 79 projected from light transmission window 80 inhousing 71 bisects the oval opening formed through the base of thehousing, as shown. This permits the user to easily align the visiblelaser beam across the bar code symbol encircled within and along theviewing window of the bar code symbol reading device. Thus, to read abar code symbol, all the user has to do is encircle the bar code symbolto be read through the viewing aperture of the device, align theprojected visible laser beam with encircled bar code symbol, andautomatically the bar code symbol is detected, scanned, and decoded bythe bar code symbol reading engine 18, and the produced symbol characterdata is automatically transmitted to the receiver circuitry in the baseunit. When the transmitted symbol character data is received by the baseunit and retransmitted to the host computer system, an acousticalacknowledgement signal S.sub.ACK is emitted to the ambient environmentfor the user to hear. Thereafter, the user may leave the bar code symbolreading device to rest anywhere on the desk top, or may place it withinrecess 72 in order to automatically recharge the battery unit within thebar code symbol reading device.

[0141] When using any of the bar code symbol reading devices of thepresent invention in commercial environments, such as retail stores, thewireless nature of the bar code symbol reader/base unit interfacepermits the operator thereof to accidently or deliberately walk off withthe bar code symbol reading device. This could have serious financialconsequences which could prevent commercially successful utilization ofthe system in such operating environments. In the illustrativeembodiments, this problem is solved by providing each bar code symbolreader with an electrically-passive tuned resonant circuit 500 (i.e.,target), realized on an ultra-thin adhesive label 501 affixed to eitherthe exterior or interior of the hand supportable housing. The tunedresonant circuit 500 is identical to those used on products such aslibrary books, compact discs, and other valuable goods sold in retailoutlets. When the bar code symbol reader is moved through the exit doorof the store, the tuned resonant circuit 500 absorbs energy from themagnetic field produced by magnetic field generation panels 502 and 503installed of an electronic article surveillance system 504 installed atthe store exit. When a bar code symbol reader bearing tuned resonantcircuit 500 is moved through the magnetic interrogation field producedby panels 502 and 503, the tuned resonant circuit absorbs power from themagnetic field and the corresponding current fluctuation is detected bycurrent sensing circuitry which triggers an audible alarm 505, notifyingstore management that the bar code symbol reader has been removed fromthe store without authorization. Various types of targets, interrogationfield panels and electronic current sensing circuitry may be used topractice this aspect of the present invention. Suitable anti-theftdetection (or electronic article surveillance) systems for practicingthis aspect of the present invention can be found in U.S. Pat. No.4,870,391 to Cooper; U.S. Pat. No. 4,751,500 to Minasy, et al.; and U.S.Pat. No. 4,684,930 to Minasy, et al., which are hereby incorporated byreference in their entirety. This method provides an inexpensive way ofsecuring bar code symbol scanning devices, and is less expensive andmuch simpler than providing a signal receiver within the bar code symbolscanner itself.

[0142] Having described the four illustrative embodiments of the barcode symbol reading device hereof, it is appropriate at this juncture todescribe in greater detail the laser scan and object detection fieldsthereof.

[0143] As illustrated in FIGS. 2, 4, 5 and 6C in particular, eachembodiment of the bar code symbol reading device generates from its barcode symbol reading engine, two different types of fields external toits hand-supportable housing. As explained below, these fields functionto carry out a novel bar code symbol reading process according to theprinciples of the present invention. The first field, referred to as the“object detection field”, indicated in FIG. 2 by broken and dotted lines15, is provided external to the housing for detecting energy reflectedoff an object (bearing a bar code symbol) located in the objectdetection field. The second field, referred to as the “scan field”, hasat least one laser beam scanning plane 10, as shown in FIG. 2, and isprovided external to the housing for scanning a bar code symbol on theobject in the object detection field. In the preferred embodiment, barcode symbol scanning is achieved using a visible laser beam which, afterreflecting off the bar code symbol in the scan field, produces laserscan data that is collected for the purpose of automatically detectingthe bar code symbol and subsequently reading (i.e., scanning anddecoding) the same.

[0144] In general, detected energy reflected from an object duringobject detection can be optical radiation or acoustical energy, eithersensible or non-sensible by the user, and may be either generated fromthe automatic bar code reading device or an external ambient source.However, as will be described in greater detail hereinafter, theprovision of such energy is preferably achieved by transmitting a widebeam of pulsed infrared (IR) light away from transmission aperture 11,in a direction substantially parallel to longitudinal axis 16 of thehand-supportable housing. In the preferred embodiment, the objectdetection field, from which such reflected energy is collected, isdesigned to have a narrowly diverging pencil-like geometry ofthree-dimensional volumetric expanse, which is spatially coincident withat least a portion of the transmitted infrared light beam. This featureof the present invention ensures that an object residing within theobject detection field will be illuminated by the infrared light beam,and that infrared light reflected therefrom will be directed generallytowards the transmission aperture of the housing where it can beautomatically detected to indicate the presence of the object within theobject detection field. In response, a visible laser beam isautomatically generated within the interior of the bar code symbolreading engine, projected through the light transmission aperture of thehousing and repeatedly scanned across the scan field, within which atleast a portion of the detected object lies. At least a portion of thescanned laser light beam will be scattered and reflected off the objectand directed back towards and through light transmissive window 11 forcollection and detection within the interior of the bar code symbolreading engine, and subsequently processed in a manner which will bedescribed in detail hereinafter.

[0145] To ensure that the user can quickly align the visible laser beamwith the bar code symbol on the detected object, the object detectionfield is designed to spatially encompass at least a portion of the scanfield along the operative scanning range of the device, as illustratedin FIGS. 3 and 3A, for the first illustrative embodiment of the presentinvention. This structural feature of the present invention provides theuser with an increased degree of control, as once an object is detected,minimal time will be required by the user to point the visible laserbeam towards the bar code symbol for scanning. In effect, the laser beampointing efficiency of the device is markedly improved during theautomatic bar code reading process, as it is significantly easier forthe user to align the laser beam across the bar code symbol upon objectdetection.

[0146] As shown in FIGS. 7A to 7F, the automatic bar code symbol readingengine 18 of the present invention contains a number of electronic,electro-optical and optical components arranged in a strategic mannerwithin a miniature housing 85. In the illustrative embodiment, theminiature housing has match-book size dimensions (e.g., a width alonglight transmission window of 1.8″, a depth of 1.6″, and a height of0.6″) and an interior volume of about 1.7 cubic inches. As shown,housing 85 has an upper portion 85A and a lower portion 85B. Theunderside 86 of the upper housing portion 85A functions as an opticalbench (i.e., platform) upon which the majority of optical andelectro-optical components of the engine are mounted. The lower housingportion 85B supports two PC boards 87 and 88 on which the circuits ofFIG. 8 are realized using surface-mount componentry and like technologyknown in the art. In order to permit the laser beam produced withinhousing 85 to exit the housing and to allow reflected laser light enterthe same for detection, a first light transmission aperture 89 isprovided in the front side panel of the upper housing portion 85A. Inorder to permit IR light to exit and enter the housing, a second lighttransmission aperture 90 is formed in the front side panel of the lowerhousing portion 85B, as shown. To permit flexible wire harness 21, 28 or47 (between the bar code symbol reading engine and the data packettransmission circuit on the PC board) to interconnect with the circuitryon PC board 88 by way of a conventional connector 91, an input/outputaperture 92 is formed in the rear side panel of the lower housingportion 60B, as shown. With PC boards 87 and 88 installed within theinterior 93 of the lower housing portion, as shown in FIG. 7A, the upperhousing is snap-fitted with the lower housing portion 85B by way of tabs94 that engage against tie interior surfaces of the side panels of thelower housing portion 85B. Additional details regarding the opticallayout and construction details of the preferred embodiment of bar codereading engine 18, will be described hereinafter.

[0147] In FIG. 7G, an alternative embodiment of the miniature automaticbar code symbol reading engine 18′ is shown. As illustrated, thisembodiment of the device further includes PC board 45 (shown in FIG. 5A)mounted between PC boards 87 and 88, contained within matchbox sizehousing 60. With data transmission circuit 121 realized on PC board 45,all that is required to operate automatic bar code symbol reading engine18′ is a supply of low voltage D.C. power, which can be provided byattaching a subminiature battery pack onto the end portion, bottomportion, top portion, or side portion of the housing 60. Thetransmitting antenna 23, connected to PC board 45, is mounted onto theexterior of housing 60 and the produced output from this embodiment ofthe bar code symbol reading engine is a RF carrier signal modulated by aserial data stream representative of the data packet group produced bythe data packet transmission circuit in response to the successfulreading of a bar code symbol. In alternative embodiments of the presentinvention, the battery pack may be physically incorporated within theinterior of the housing modified in dimensions to accommodate thedimensions of the battery supply, and battery power recharging circuitryused in recharging the same.

[0148] As shown in FIG. 8, automatic bar code reading engine 18 is asystem comprising a number of cooperating components, namely: a systemoverride signal detection circuit 100 for detecting the production of asystem override signal and producing in the presence thereof controlactivation signal A.sub.0=1; a primary oscillator circuit 101 forproducing a primary clock signal CLK for use by the system overridesignal detection circuit and object detection circuit 107; a first RCtiming network 102 for setting the oscillation frequency of the primaryoscillator circuit; means (e.g., Hall-effect sensor) 103 for producing asystem override signal; first control means 104, realized as a firstcontrol circuit C.sub.1, for performing localized system controlfunctions; a second RC timing network 105 for setting a timer T.sub.1 incontrol circuit C.sub.1; means (e.g., an object sensing circuit 106 andan object detection circuit 107) for producing a first activationcontrol signal A.sub.1=1 upon the detection of an object bearing a barcode in at least a portion of the object detection field; a laser beamscanning mechanism 108 for producing and scanning a visible laser beamacross the bar code symbol on the detected object:; photoreceivingcircuit 109 for detecting laser light reflected off the scanned bar codesymbol and producing an electrical signal D.sub.1 indicative of thedetected intensity; a analog-to-digital (A/D) conversion circuit 110 forconverting analog scan data signal D.sub.1 into a corresponding digitalscan data signal D.sub.2; a bar code presence detection circuit 111 forprocessing digital scan data signal D.sub.2 in order to automaticallydetect the digital data pattern of a bar code symbol on the detectedobject and produce control activation signal A.sub.2=1; a third RCtiming network 112 for setting a timer T.sub.BCD in the bar code symboldetection circuit; second control means 113, realized as a secondcontrol circuit C.sub.2, for performing local system control operationsin response to the detection of the bar code symbol; third control means114, realized as third control module C.sub.3; a range selection circuit115 for supplying range selection signals to the object detectioncircuit; second control circuit C.sub.2 and third control moduleC.sub.3; timers T.sub.2, T.sub.3, and T.sub.4 identified by referencenumerals 116, 117 and 118, respectively; a symbol decoding module 119for processing digital scan data signal D.sub.2 so as to determine thedata represented by the detected bar code symbol, generate symbolcharacter data representative thereof, and produce activation controlsignal A.sub.3 for use by third control module C.sub.3; a data packetsynthesis module 120 for synthesizing a group of formatted data packetsfor transmission to its mated base unit; and a data packet transmissioncircuit 121 for transmitting the group of data packets synthesized bythe data packet synthesis module. As will be described in greater detailhereinafter, second control circuit C.sub.2 is capable of “overriding”(i.e., inhibit and/or enable) first control circuit C.sub.1, whereasthird control module C.sub.3 is capable of overriding first and secondcontrol circuits C.sub.1 and C.sub.2, respectively. As shown in FIG. 8,such control override signals are carried out by the generation ofcontrol override signals (i.e., C.sub.2/C.sub.1, C.sub.3/C.sub.2 andC.sub.3/C.sub.1) transmitted between respective control structures.Owing to the unique architecture of the control subsystem hereof, theautomatic bar code symbol reading device of the present invention iscapable of versatile performance and ultra-low power operation. Thestructure, function and advantages of this control subsystemarchitecture will become apparent hereinafter.

[0149] As shown in FIG. 8, electrical power is provided to thecomponents of the bar code reading device by battery power supply unit(20) contained within the housing of the device. In the illustrativeembodiment, the battery power supply unit is realized as a power supplydistribution circuit 125 fed preferably by replaceable or rechargeablebatteries 126. In the case of rechargeable batteries, a secondaryinductive coil 127, bridge rectifier 128 and voltage regulation circuit129 are contained within the hand-supportable housing, and configured asshown in FIG. 8. The function of second inductive coil 128 is toestablish an electromagnetic coupling with the primary inductive coilcontained in the base unit associated with the bar code reading devicewhenever the device is supported in the recharging portion of the baseunit. In this configuration, electrical power is inductively transferredfrom the primary inductive coil in the base unit to secondary inductivecoil 127, rectified by bridge rectifier 128, and filtered by voltageregulation circuit 129 to provide a regulated DC power supply forrecharging rechargeable batteries 126. In addition, an externallyaccessible ON/OFF power switch 130 or functionally equivalent device isprovided in series between battery supply unit 126 and powerdistribution circuitry 125 so as to permit the user to selectivelyenergize and deenergize the device, as desired or required. Rangeselection circuit 115 may include a manual switch externally accessibleto the housing, which the user can depress to select long or short-rangemodes of object detection, bar code presence detection and/or bar codesymbol reading. Alternatively, Range Selection Circuit 115 can beactivated to a particular range setting by symbol decoding module 119.In this mode of operation, the range setting can be set by decoding abar code symbol predesignated to activate the long or short range modesof detection, as the case may be.

[0150] In the illustrative embodiment of the present invention, systemoverride signal detection circuit 100, primary oscillator circuit 101,object detection circuit 107, first control circuit C.sub.1,analog-to-digital conversion circuit 110, bar code symbol detectioncircuit 111, and second control circuit C.sub.2 are all realized on asingle Application Specific Integrated Circuit (ASIC) chip 133 usingmicroelectronic circuit fabrication techniques known in the art. In theillustrative embodiment, the ASIC chip and associated circuits for laserscanning and light detection and processing functions, are mounted on PCboard 87 Symbol decoding module 119, data packet synthesis module 120,timers T.sub.2, T.sub.3, T.sub.4, and T5 and third control moduleC.sub.3 are realized using a single programmable device, such as amicroprocessor having accessible program and buffer memory, and externaltiming circuitry, collectively depicted by reference numeral 134 in FIG.8. In the illustrative embodiment, these components and devices aremounted on PC board 88.

[0151] In the illustrative embodiment, when power switch 130 is engagedto its ON position, power from battery power unit 126 is provided tofirst control circuit C.sub.1, system override detection circuit 100,primary oscillator circuit 101 and IR object sensing circuit 106 andobject detection circuit 107 so as to enable their operation, while onlybiasing voltages are provided to all other system components so thatthey are each initially disabled from operation. In accordance with theprinciples of the present invention, the consumption of electrical powerto all other system components occurs under the management of thecontrol architecture formed by the interaction of distributed controlcenters C.sub.1, C.sub.2 and C.sub.3.

[0152] In some embodiments, it is desired to override (i.e., disable)the entire system from operation, such as when a hand-supportable barcode symbol reading device is placed in a holster worn on the user'sbelt. In such instances, the bar code symbol reading device of thepresent invention can be simply disabled by activating the systemoverride signal producing device (e.g., Hall-effect sensor in thepresence of a magnetic field) 103 mounted within the hand-supportablehousing. As shown in FIG. 8A, system override signal detection circuit100 comprises AND gates 136 and 137, an invertor 138, an S-R latchcircuit 139 and a logical driver 140, configured as shown. Asillustrated in FIG. 8A, the clock oscillator signal CLK (i.e., aperiodic pulsed signal) is provided as one input of AND gate 136, oneinput of AND gate 137, and the input of logic driver 140. The systemoverride signal SO from Hall-effect sensor 103 is provided to the inputof invertor 138 and the second input of AND gate 136. The output ofinvertor 138 is provided to the input of AND gate 137. As shown, theoutput of AND gate 137 is provided to the RESET input of S-R latch 139,whereas the output of AND gate 136 is provided to the SET input of S-Rlatch 139. The output of S-R latch 139 is activation signal A.sub.0provided to first control circuit C.sub.1, whereas the output of logicdriver 140 is the driver signal SO DR which is used to drive (i.e.,provide the supply voltage for) the Hall-effect sensor 103 mountedwithin the hand-supportable housing.

[0153] As shown in FIG. 8, primary clock oscillator circuit 101 suppliesa periodic pulsed signal to both the system override signal detectioncircuit and the object detection circuit. In the illustrativeembodiment, the primary oscillation circuit is designed to operate at alow frequency (e.g., about 1.0 Khz) and a very low duty cycle (e.g,about 1.0%). The “ON” time for the system override signal producingmeans and the IR object sensing circuit is proportional to the dutycycle of the primary oscillation circuit. This feature allows forminimal operating current when the bar code symbol reading engine is inthe object detection mode and also when the system override signalproducing device is activated (i.e., produces a system override signal).

[0154] As shown in FIG. 8B, primary oscillation circuit 101 comprises aSchmidtt trigger 142, invertors 143 and 144, and a NMOS Field-EffectTransistor(FET) 145. As shown, the output of trigger 142 is connected tothe inputs of both invertors 143 and 144. The output of invertor 143produces clock signal CLK which is provided to system override signaldetection circuit 100 and object detection circuit 107. The primaryoscillation circuit is connected to first RC network 102 which comprisesresistors R.sub.1 and R.sub.2, and capacitor C.sub.1 configured as shownin FIG. 8B. The function of the RC network 102 is to establish the dutycycle and the oscillation period of the primary oscillator circuit. Asshown, two time constants (i.e., loads) are established by the networkusing capacitor C.sub.1 and resistors R.sub.1 and R.sub.2. The RCcombination of R.sub.1 and C.sub.1 establishes the period of theoscillator. The ratio of the R.sub.2 to R.sub.1 provides the duty cycleof the oscillator. The value of R.sub.2 is approximately 100 timessmaller than R.sub.1 to establish a 1.0% duty cycle. As shown in thetiming diagram of FIG. 8C, the clock signal CLK remains low while theV.sub.1 1 signal ramps up. This ramp up time is the time it takes forthe capacitor C.sub.1 to charge through R.sub.1. The clock signal CLKthen goes HIGH for the shorter discharge time of the capacitor throughR.sub.2. By adjusting the duty cycle (i.e., increasing or decreasing thevalue of resistor R.sub.2), the sensitivity of the object detectioncircuit can be tuned such that it activates consistently at a specifieddistance from the light transmission window of the bar code symbolreading device.

[0155] In accordance with the present invention, the purpose of objectdetection circuit 107 is to produce a first control activation signalA.sub.=1 upon determining that an object (e.g., product, document, etc.)is present within the object detection field of the bar code symbolreading device, and thus at least a portion of the scan field thereof.As illustrated in FIG. 8, the object detection circuit is activated(i.e., enabled) by enabling signal E.sub.0 supplied from first controlcircuit C. sub.1, and the object detection circuit provides the firstcontrol circuit C.sub.1 with first control activation signal A.sub.1=1when an object residing in the scan field is detected. In theillustrative embodiment, an “active” technique of automatic objectdetection is employed, although it is understood that “passive”techniques may be used with acceptable results. As shown in FIG. 8, theobject detection means of the system comprises two major subcomponents,namely object sensing circuit 106 and object detection circuit 107, bothof which are locally controlled by control circuit C.sub.1. In theillustrative embodiment, object sensing circuit comprises an IR LED 148driven by an IR transmitter drive circuit 149, and an IR phototransistor(or photodiode) 150 activated by an IR receive biasing circuit 151. Asshown in FIGS. 7D and 7F, these components are arranged and mounted onPC board 87 so as to provide an object detection field that spatiallyencompasses the laser scanning plane, as described above. As shown inFIG. 8, the object detection circuit 107 produces an enable signal IR DRwhich is provided to the IR transmitter drive circuit 149. The signalproduced from IR phototransistor 151 , identified as IR REC, is providedas input signal to the object detection circuit 107 for signalprocessing in a manner which will be described in detail below. In theillustrative embodiment, infrared LED 148 generates a 900 nanometersignal that is pulsed at the rate of the primary oscillation circuit 101(e.g., 1.0 KHZ) when the object detection circuit is enabled by enablesignal E.sub.0 produced from the first control circuit C.sub.1.Preferably, the duty cycle of the primary oscillation circuit 101 isless than 1.0% in order to keep the average current consumption verylow.

[0156] As shown in FIG. 7F, in particular, this pulsed optical signal istransmitted from infrared LED 148 to broadly illuminate the scan field.When an object is present within the object detection portion of thescan field, a reflected optical pulse signal is produced and focussedthrough focusing lens 153 onto photodiode 150. The function ofphotodiode 150 is to receive (i.e., sense) the reflected optical pulsesignal and, in response thereto, produce a current signal IR REC.

[0157] As shown in FIG. 8D, produced current signal IR REC is providedas input to the current-to-voltage amplifier (e.g., transconductanceamplifier) 155 in the object detection circuit, and is converted into avoltage signal Vo. Within the object detection circuit 107, theinfra-red LED drive signal IR DR is produced as the output of AND gate157, whose inputs are enabling signal E.sub.0 supplied from the firstcontrol circuit C.sub.1 and the pulsed clock signal CLK supplied fromthe primary oscillation circuit 101.

[0158] As shown in FIG. 8D, enabling signal E.sub.0 is also provided tocurrent-to-voltage amplifier circuit 155, and the output voltage signalfrom AND gate 157 is provided as the second input to the synchronoustransmitter/receiver circuit 156. Notably, the output voltage signalfrom AND gate 157 and the output voltage signal V.sub.0 from thecurrent-to-voltage amplifier correspond to the IR pulse signal trainstransmitted from and received by object sensing circuit 106. Thefunction of the synchronous transmitter/receiver circuit is tocyclically compare the output voltage signal from AND gate 157 and theoutput voltage signal V.sub.0 from the current-to-voltage amplifier, andif these voltage signals synchronously match each other for a minimum ofthree (3) consecutive cycles of the primary oscillation circuit 101,then synchronous transmitter/receiver circuit 156 produces as output, afirst control activation signal A.sub.1=1, indicative that an object ispresent in the scan field of the bar code symbol reading device.Conversely, whenever first control activation signal A.sub.1=0 isproduced, then this condition indicates that an object is not present inthe scan field.

[0159] Alternatively, the automatic bar code reading device of thepresent invention can be readily adapted to sense ultrasonic energyreflected off an object present within the scan field. In such analternative embodiment, object sensing circuit 106 is realized as anultrasonic energy transmitting/receiving mechanism In the housing of thebar code reading engine, ultrasonic energy is generated and transmittedforwardly into the scan field. Then, ultrasonic energy reflected off anobject within the object detection field is detected adjacent to thetransmission window using an ultrasonic energy detector that produces ananalog electrical signal (i.e., UE REC) indicative of the detectedintensity of received ultrasonic energy. Preferably, a focusing elementis disposed in front of the energy detector in order to effectivelymaximize the collection of ultrasonic energy reflected off objects inthe scan field. In such instances, the focusing element essentiallydetermines the geometrical characteristics of the object detection fieldof the device. Consequently, the energy focusing (i.e., collecting)characteristics of the focusing element will be selected to provide anobject detection field which spatially encompasses at least a portion ofthe scan field. The electrical signal produced from theultrasonic-energy based object sensing circuit is provided to objectdetection circuit 107 for processing in the manner described above. Inthe illustrative embodiments, object detection circuit 107 is providedwith two different modes of detection, namely, a long-range mode ofobject detection and a short-range mode of object detection. As shown inFIGS. 8 and 8D, these modes are set by range selection circuit 115 usingmode enable signal R. sub.11. When induced into the long-range mode ofobject detection, object detection circuit 107 will generate firstcontrol activation signal A.sub.1=1 whenever an object has been detectedwithin the operative range of the object detection field, independent ofthe particular distance at which the object resides from thetransmissive window. When induced into the short-range mode of objectdetection, the object detection circuit will generate first activationcontrol signal A.sub.1=1 only when an object is detected at a distancewithin the short-range of the object detection field.

[0160] As schematically indicated in FIGS. 3 and 3A, the long-rangespecification for object detection is preferably preselected to be thefull or entire range of sensitivity provided by current-to-voltageamplifier (e.g., 0 to about 10 inches). Preferably, the short-rangespecification for object detection is preselected to be the reducedrange of sensitivity provided by the IR sensing circuit when mode enablesignal E.sub.IRT=1 is provided to the desensitization port of amplifier155. In the illustrated embodiment, the short-range of object detectionis about 0 to about 3 inches or so to provide CCD-like scanneremulation. As will become apparent hereinafter, the inherently limiteddepth and width of field associated with the short-range mode of objectdetection prevents laser scanning mechanism 108 from flooding the scanfield with laser scanning light and thus inadvertently detectingundesired bar code symbols. Particular uses to which object detectionrange selection can be put, will be described in greater detailhereinafter with reference to FIGS. 27A to 29B in particular.

[0161] As shown in FIG. 8D, the sensitivity (i.e., gain) ofcurrent-to-voltage amplifier 155 is controlled by a sensitivity controlsignal E.sub.IRT produced from range control signal generating circuit158. In the illustrative embodiment, the sensitivity control signalE.sub.IRT 160 is produced by a resistance network whose values areselected using an analog switch that is responsive to a range selectsignal R.sub.1 produced by range selection circuit 115. As such, thesensitivity of the current-to-voltage amplifier is simply adjusted byselecting one of two resistance values within the resistance networkused to realize range control signal generating circuit 158. The shortrange mode of object detection is enabled by selecting a resistancevalue that produces an amplifier gain that is lower than that producedduring the long-range mode of object detection where detectable objectscan reside further away from the light transmission window of the barcode symbol reading device.

[0162] In general, first control logic block C.sub.1 provides the firstlevel of system control. This control circuit activates the objectdetection circuit 107 by generating enable signal E.sub.0=1, itactivates laser beam scanning circuit 108, photoreceiving circuit 109and A/D conversion circuit 110 by generating enable signal E.sub.1=1,and it activates bar code symbol detection circuit 111 by generatingenable signal E.sub.2=1. In addition, the first control circuit C.sub.1provides control lines and signals in order to control these functions,and provides a system override function for the low power standby modeof the bar code symbol reading engine. In the illustrative embodiment,the specific operation of first control circuit C.sub.1 is dependent onthe state of several sets of input signals (i.e., activation controlsignal A.sub.0 and A.sub.1, and override signals C.sub.2/C.sub.1,C.sub.3/C.sub.1-1 and C.sub.3/C.sub.1-2) and an internally generateddigital timer signal B. A preferred logic implementation of the firstcontrol circuit C.sub.1 is set forth in FIGS. 8E and 8F. The functionaldependencies among the digital signals in this circuit are representedby the Boolean logic expressions set forth in the Table of FIG. 8G, andtherefore are sufficient to uniquely characterize the operation of firstcontrol circuit C.sub.1. As shown in FIG. 8E, first control circuitcomprises a pair of logic invertors 161 and 162, an OR gate 163, a NANDgate 164, a NOR gate 165, an AND gate 166, and a digital timer circuit167 which produces as output, a digital output signal B. As shown,digital timer circuit 167 comprises a flip-flop circuit 170, a NOR gate171, a clock divide circuit 173, a comparator (i.e., differential)amplifier 172, and a NPN transistor 174. As illustrated, activationcontrol signal A.sub.1 is provided to the CLK input of flip-flop 170 byway of invertor 161. The QNOT output of the flip-flop is provided as oneinput to NOR gate 171, whereas the other input thereof is connected tothe CLK input of clock divide circuit 173 and the output of comparatoramplifier 172. The output of the NOR gate is connected to the base oftransistor 174, while the emitter thereof is connected to electricalground and the collector is connected to the negative input ofcomparator amplifier 172 as well as the second timing network 105, in amanner similar to the interconnection of first timing network 102 toprimary oscillation circuit 101. Also, the divided clock output (i.e.,{fraction (CLK/2048)}) produced from clock divide circuit 173 isprovided to the CL input of flip-flop 170. As shown, the Q output offlip-flop 170 is connected to the reset (RST) input of the clock dividecircuit 173 as well as to one input of OR gate 163, one input of NORgate 165, and one input of AND gate 166. Notably, the Q output of theflip-flop is the digital output signal B indicated in each of theBoolean expressions set forth in the Table of FIG. 8G.

[0163] As shown in FIG. 8E, enable signal A.sub.0 from the systemoverride signal detection circuit 100 is provided as the second input toOR gate 163, and the output thereof is provided as input to NAND gate164. The override signal C.sub.2/C.sub.1 from second control circuitC.sub.2 is provided as the input to invertor 162, whereas the outputthereof is provided as the second input to AND gate 166. The overridesignal C.sub.3/C.sub.1-1 from third control module C.sub.3 is providedas the second input to NAND gate 164, whereas the output thereofproduces enable signal E.sub.0 for activating the object detectioncircuit 107. The override signal C.sub.3/C.sub.1-2 is provided to thesecond input to NOR gate 165, whereas the output thereof produces enablesignal E.sub.1 for activating laser scanning and photoreceiving circuits108 and 109 and A/D conversion circuit 110. The output of AND gate 166produces enable signal E.sub.2 for activating bar code symbol detectioncircuit 111.

[0164] Referring to FIG. 8E, the operation of digital timer circuit willbe described. The output voltage of comparator amplifier 172 keepstransistor 174 in its non-conducting state (i.e., OFF), via NOR gate171, thus allowing the external RC network 105 to charge to capacity.When comparator input voltage vx exceeds reference voltage {fraction(VCC/2)}, the comparator output voltage biases (i.e., switches ON)transistor 174 so as to begin discharging the RC timing network 105,until input voltage vx falls below reference voltage {fraction (VCC/2)}upon which the process repeats, thus generating a digital clockoscillation at the comparator output. The timing cycle of digital outputsignal B is initiated by a transition on the activation control signalA.sub.1 which toggles flip-flop 170. This toggling action sets thedigital output signal B to its logical HIGH state, resetting clockdivide circuit 173 and starting the digital clock oscillator describedabove by toggling the Q output of flip-flop 170. As shown in FIG. 8F,clock divide circuit 173 is constructed by cascading eleven flip-flopcircuits together in a conventional manner. Each stage of the clockdivider circuit divides the input clock signal frequency by the factor2. Thus the clock divider circuit provides an overall division factor of2048. When the clock output {fraction (CLK/2048)} toggles, the flip-flopcircuit is cleared thus setting the digital signal B to logical LOWuntil the next pulse of the activation control signal A.sub.1.

[0165] As reflected in the Boolean expressions of FIG. 8G, the state ofeach of the enable signals E.sub.0 , E.sub.1 and E.sub.2 produced by thefirst control circuit C.sub.1 is dependent on whether the bar codesymbol reading system is in its override state of operation. To betterunderstand the operation of control circuit C.sub.1, it is helpful toconsider a few control strategies preformed thereby.

[0166] In the override state of operation of the system, enable signalE.sub.0 can be unconditionally set to E.sub.0=0 by the third controlcircuit C.sub.3 setting override signal C.sub.3/C.sub.1=0. Under suchconditions, the object detection circuit is enabled. Also, when thesystem override signal detection circuit is activated (i.e., A.sub.0=1)or the laser scanning and photoreceiving circuits activated (i.e., B=1)and override signal C.sub.3/C.sub.1-1=1, then enable signal E.sub.0=1and therefore the object detection circuit is automatically deactivated.The advantage of this control strategy is that it is generally notdesirable to have both the laser scanning circuit 108 and photoreceivingcircuit 109 and the object sensing circuit 105 active at the same time,as the wavelength of the infrared LED 148 typically falls within theoptical input spectrum of the photoreceiving circuit 109. In addition,less power is consumed when the object detection circuit 107 is inactive(i.e., disabled).

[0167] As illustrated in FIG. 8, laser scanning circuit 108 comprises alight source 177 which, in general, may be any source of intense lightsuitably selected for maximizing the reflectivity from the objectbearing a bar code symbol. In the preferred embodiment, light source 177comprises a solid-state visible laser diode (VLD) which is driven by aconventional driver circuit 178. In the illustrative embodiment, thewavelength of visible laser light produced from the laser diode ispreferably about 670 nanometers. In order to repeatedly scan theproduced laser beam over the scan field (having a predetermined spatialextent in front the light transmission window), a planar scanning mirror179 is rapidly oscillated back and forth by a flipper or stepper motor180 driven by a conventional driver circuit 181, as shown. A. stationarymirror 182 is mounted on the underside of housing portion 85A along anoptical path between laser diode 177 and planar mirror 179, in order todirect the laser beam from the laser diode to the oscillating planarmirror 179. To selectively activate both laser light source 177 andmotor 180, laser diode and scanning motor enable signal E.sub.1 isprovided as input to driver circuits 178 and 181. When enable signalE.sub.1 is a logical “high” level (i.e., E.sub.1=1) a laser beam isgenerated and projected through the light transmissive window, when theprojected laser beam is repeatedly scanned across the scan field, and anoptical scan data signal is thereby produced off the object (and barcode) residing within the scan field. When laser diode and scanningmotor enable signal E.sub.1 is a logical “low” (i.e., E.sub.1=0), thereis no laser beam produced, projected, or scanned across the scan field.

[0168] When a bar code symbol is present on the detected object at thetime of scanning, the user visually aligns the visible laser beam acrossthe bar code symbol and incident laser light on the bar code will bescattered and reflected. This scattering/reflection process produces alaser light return signal of variable intensity which represents aspatial variation of light reflectivity characteristic of the pattern ofbars and spaces comprising the bar code symbol. Photoreceiving circuit109 detects at least a portion of the reflected laser light of variableintensity and produces an analog scan data signal D.sub.1 indicative ofthe detected light intensity. In the illustrative embodiment,photoreceiving circuit 109 generally comprises a number of components,namely: laser light collection optics (i.e., planar mirror 179 andfocusing lens 184) for focusing reflected laser light for subsequentdetection; a photoreceiver 185 (e.g., a silicon photosensor) mountedonto PC board 87, as shown in FIG. 7F, for detecting laser light focusedby the light collection optics; and a frequency selective filter 186A,mounted in front of photoreceiver 185, for transmitting thereto onlyoptical radiation having wavelengths up to a small band above 670nanometers.

[0169] In order to prevent optical radiation slightly below 670nanometers from passing through light transmission aperture 110 andentering the housing, a light transmissive window realized as a plasticfilter lens 186B is installed over the light transmission aperture ofthe housing. This plastic filter lens has optical characteristics whichtransmit only optical radiation from slightly below 670 nanometers. Inthis way, the combination of plastic filter lens 186B at thetransmission aperture and frequency selective filter 186A beforephotoreceiver 185 cooperate to form a narrow band-pass optical filterhaving a center frequency f.sub.c=670 nanometers. By permitting onlyoptical radiation associated with the visible laser beam to enter thehousing, this optical arrangement provides improved signal-to-noiseratio for detected scan data signals D.sub.1.

[0170] In response to reflected laser light focused onto photoreceiver185, photoreceiver 185 produces an analog electrical signal which isproportional to the intensity of the detected laser light. This analogsignal is subsequently amplified by preamplifier 187 to produce analogscan data signal D.sub.1. In short, laser scanning circuit 108 andphotoreceiving circuit 109 cooperate to generate analog scan datasignals D.sub.1 from the scan field, over time intervals specified byfirst control circuit C.sub.1 during normal modes of operation, and bythird control module C.sub.3 during “control override” modes ofoperation.

[0171] As illustrated in FIG. 8, analog scan data signal D.sub.1 isprovided as input to A/D conversion circuit 110, shown in FIG. 8H. In amanner well known in the art, A/D conversion circuit 110 processesanalog scan data signal D.sub.1 to provide a digital scan data signalD.sub.2 which has a waveform that resembles a pulse width modulatedsignal, where logical “1” signal levels represent spaces of the scannedbar code and logical “0” signal levels represent bars of the scanned barcode. A/D conversion circuit 110 can be realized using any conventionalA/D conversion techniques well known in the art. Digitized scan datasignal D.sub.2 is then provided as input to bar code presence detectioncircuit 111 and symbol decoding module 119 for use in performingparticular functions required during the bar code symbol reading processof the present invention.

[0172] The primary purpose of bar code presence detection circuit 111 isto determine whether a bar code is present in or absent from the scanfield, over time intervals specified by first control circuit C.sub.1during normal modes of operation and by third control module C.sub.3during control override modes of operation. In the illustrativeembodiment, bar code presence detection circuit 111 indirectly detectsthe presence of a bar code in the scan field by detecting its bar codesymbol “envelope”. In the illustrative embodiment, a bar code symbolenvelope is deemed present in the scan field upon detecting acorresponding digital pulse sequence in digital signal D.sub.2 that A/Dconversion circuit 110 produces when photoreceiving circuit 109 detectslaser light reflected off a bar code symbol scanned by the laser beamproduced by laser beam scanning circuit 108. This digital pulse sequencedetection process is achieved by counting the number of digital pulsetransitions (i.e., falling pulse edges) that occur in digital scan datasignal D.sub.2 within a predetermined time period T.sub.1 clocked by thebar code symbol detection circuit. According to the laws of physicsgoverning the laser scanning operation, the number of digital(pulse-width modulated) pulses detectable at photoreceiver 185 duringtime period T.sub.1 is a function of the distance of the bar code fromthe light transmission window 111 at the time of scanning. Thus a barcode symbol scanned at 6″ from the light transmission window willproduce a larger number of digital pulses (i.e., digital count) atphotoreceiver 185 during time period T.sub.1 than will the same bar codesymbol scanned at 3″ from the light transmission window.

[0173] In the illustrative embodiment, the bar code symbol detectioncircuit 111 is provided with the capacity to detect the presence of abar code symbol in either the long or short range portions of the scanfield, as specified in FIGS. 3 and 3A. This is achieved by counting thedigital pulse transitions present in digital scan signal D.sub.2 withinpredetermined time period T.sub.1 and producing second controlactivation signal A.sub.2S (i.e., A.sub.2S=1) when the counted number ofpulse transitions equals or exceeds a first prespecified digital pulsetransition count corresponding to a bar code symbol scanned in the shortrange portion of the scan field., and producing second controlactivation signal A.sub.2L (i.e., A.sub.2L=1) when the counted number ofpulse transitions equals or exceeds a second prespecified digital pulsetransition count corresponding to a bar code symbol scanned in the longrange portion of the scan field. As shown in FIG. 8, both of thesesecond control activation signals A.sub.2L and A.sub.2S are produced andprovided as input to second control circuit C.sub.2. However, secondcontrol circuit C.sub.2 selectively provides (e.g., gates) the secondcontrol activation signal that corresponds to range-mode of operationselected by the user. When the long range mode of operation has beenselected by range selection circuit 115, the device will automaticallyundergo a transition from bar code presence detection state to bar codesymbol reading state upon receiving control activation signalA.sub.2L=1. Similarly, when the short range mode of operation has beenselected by the range selection circuit 115, the device willautomatically undergo a transition from bar code presence detectionstate to bar code symbol reading state upon receiving control activationsignal A.sub.2S=1.

[0174] In the illustrative embodiment, bar code symbol presencedetection circuit 111 comprises a digital pulse transition counter 190for counting digital pulse transitions during time period T.sub.1, and adigital clock circuit (i.e., T.sub.BCD circuit) 191 for measuring (i.e.,counting) time period T.sub.BCD and producing a count reset signal CNTRESET at the end of each such time period, as shown in FIG. 8K. As shownin FIG. 8K, the function of digital clock circuit 191 is to provide atime period T.sub.BCD (i.e., time window subdivision) within which thebar code symbol detection circuit attempts, repeatedly during timeperiod T.sub.1, to detect a bar code symbol in the scan field. In thepreferred embodiment, T.sub.BCD is about 0.1 seconds, whereas T.sub.1 isabout 1.0 second. As shown in FIG. 8I, in order to establish such “barcode search” time subintervals within time period T.sub.1, the digitalclock circuit 191 generates the first count reset pulse signal CNT RESETupon the detection of the first pulse transition in digital scan datasignal D.sub.2. The effect of this reset signal is to clear or reset thedigital pulse transition (falling edge) counter. Then at the end of eachtime subinterval T.sub.BCD, digital clock signal 191 generates anothercount reset pulse CNT RESET to reset the digital pulse transitioncounter. If during time window T.sub.1, a sufficient number of pulsetransitions in signal D.sub.2 are counted over a subinterval T.sub.BCD,then either control activation signal A.sub.2L or A.sub.2S will be setto “1”. In response to the detection of this condition, second controlcircuit C.sub.2 automatically enables control activation C.sub.3 inorder to initiate a transition from the bar code symbol detection stateof operation to the bar code symbol reading state of operation.

[0175] As shown in FIG. 8I, digital pulse transition counter 191 isformed by wiring together a series of four flip-flop circuits 192 to195, such that each flip flop divides the clock signal frequency of theprevious stage by a factor of 2. As indicated in the drawing of FIG. 8I,the Q output of flip flops 192 to 194 represent the binary digits 2, 4,8, and 16 respectively, of a binary number (i.e., counting) system. Asshown, enable signal E.sub.2 from first control circuit C.sub.1 isprovided as input to NOR gate 197, while the second input thereto is thecounter reset signal CNT RESET provided from the digital counter circuit191. In order to reset or clear the pulse transition counter circuit 190upon the generation of each CNT RESET pulse, the output of the NOR gate197 is connected to the clear line (CL) of each flip flop 192 to 195, asshown.

[0176] As illustrated in FIG. 8I, digital clock circuit 191 comprises aflip-flop circuit 198, a NOR gate 199, a clock divide circuit 200, acomparator 201, and a NPN transistor 202. As illustrated, digital scandata signal D.sub.2 is directly provided to the CLK input of flip-flop198. The QNOT output of the flip-flop is provided as one input to NORgate 199, whereas the Q output thereof is connected to the CLK input ofclock divide circuit 200 and the second input of NOR gate 197. The otherinput of NOR gate 199 is connected to the input line CLK of clock dividecircuit 200 and to the output of comparator 201, as shown. The output ofthe NOR gate is connected to the base of transistor 202, while theemitter thereof is connected to electrical ground and the collector isconnected to the negative input of comparator 201 as well as to thethird timing network 112, in a manner similar to the interconnection ofthe first timing network 102 to primary oscillation circuit 101. Asshown in FIG. 8J, clock divide circuit 200 is realized as series of fiveflip-flops 200A to 200E wired together so as to divide digital clockinput signal CLOCK by 32, and be resettable by pulsing reset line RESETin a conventional manner.

[0177] When an object is detected in the scan field, first controlcircuit C.sub.1 produces enable signal E.sub.2=1 so as to enable digitalpulse transition counter 190 for a time duration of T.sub.1. As shown,the digital scan data signal D.sub.2 (representing the bars and spacesof the scanned bar code) drives the clock line of first flip flop 192,as well as the clock line of flip flop 198 in the T.sub.BCD timercircuit. The first pulse transition in digital scan data signal D.sub.2starts digital timer circuit 191. The production of each count resetpulse CNT RESET from digital timer circuit 191 automatically clears thedigital pulse transition counter circuit 190, resetting it once again tocount the number of pulse transitions present in the incoming digitalscan data signal D.sub.2 over a new time subinterval T.sub.BCD. The Qoutput corresponding to eight pulse transitions counted during timeperiod T.sub.BCD, provides control activation signal A.sub.2 S for useduring the short range mode of operation. The Q output corresponding tosixteen pulse transitions counted during time period T.sub.BCD, providescontrol activation signal A.sub.2 L for use during the long range modeof operation. When the presence of a bar code in the scan field isdetected, second activation control signal A.sub.L2 or A.sub.2S isgenerated, third control circuit C.sub.3 is activated and second controlcircuit C.sub.2 is overridden by third control circuit C.sub.3 throughthe transmission of control override signals (i.e., C.sub.3/C.sub.2inhibit and C.sub.3/C.sub.1 enable signals) from the third controlcircuit C.sub.3.

[0178] As illustrated in FIG. 8L, second control circuit C.sub.2 isrealized using logic circuitry consisting of NAND gates 205 to 208,invertors 209 and 210, NOR gates 211 to 213, NAND gates 214 and 215, ANDgate 216, configured together as shown. As shown, second controlactivation signals A.sub.2S and A.sub.2L are provided to the firstinputs of NAND gates 214 and 215, respectively, whereas the outputs ofNOR gates 211 and 212 are provided to the second inputs of NAND gates214 and 215 respectively. The outputs of NAND gates 214 and 215 areprovided to the inputs of AND gate 216 and the output thereof providesenable signal E.sub.3 for enabling third control module C.sub.3.

[0179] As shown in FIG. 8L, the third control module C.sub.3 providesoverride signals C.sub.3/C.sub.2-1 and C.sub.3/C.sub.2-2 to the firstand second inputs of NAND gate 205 and to the first input of NAND gate207 and the first input of NAND gate 208, respectively. The rangeselection signal R produced from range selection circuit 115 is providedas input to NAND gate 206. As shown, output of NAND gate 205 is providedas the second input to NAND gate 206. The output of NAND gate 206 isprovided as the second input to NAND gate 207 and the second input toNAND gate 208. As shown in FIG. 8L, the output of NAND gate 207 isprovided as an input to NOR gate 211 and invertor 209, whereas theoutput of NAND gate 208 is provided as inputs to NOR gates 211 and 212and invertor 210. The output of invertor 209 is provided as the otherinput to NOR gate 212 and one input to NOR gate 213. The output ofinvertor 210 is provided as another input to NOR gate 213, whereas theoutput thereof provides control override signal C.sub.2/C.sub.1. Soconfigured, the combinational logic of the second control circuitC.sub.2 maps its input signals to its output signals in accordance withthe logic table of FIG. 8M. Upon entering the bar code symbol readingstate, third control module C.sub.3 provides override control signalC.sub.3/C.sub.1 to first control circuit C.sub.1 and second controlcircuit C.sub.2. In response to control signal C.sub.3/C.sub.1, thefirst control circuit C.sub.1 produces enable signal E.sub.1=1 whichenables scanning circuit, 109 photoreceiving circuit 109 and A/Dconversion circuit 110. In response to control signal C.sub.3/C.sub.2,the second control circuit C.sub.2 produces enable signal E.sub.2=0,which disables bar code symbol detector circuit 111. Thereafter, thirdcontrol module C.sub.3 produces enable signal E.sub.4 to enable symboldecoding module 119. In response to the production of such signals, thesymbol decoding module decode processes, scan line by scan line, thestream of digitized scan data contained in signal D.sub.2 in an attemptto decode the detected bar code symbol within the second predeterminedtime period T.sub.2 established and monitored by the third controlmodule C.sub.3. If the symbol decoding module 119 successfully decodesthe detected bar code symbol within time period T.sub.2, then symbolcharacter data D.sub.3 (representative of the decoded bar code symboland typically in ASCII code format) is produced. Thereupon symboldecoding module 119 produces and provides the third control activationsignal A.sub.3 to the third control module C.sub.3 in order to induce atransition from the bar code symbol reading state to the data packettransmission state. In response thereto, a two distinct events occur.First the third control module C.sub.3 produces and provides enablesignal E.sub.5 to data packet synthesis module 120. Secondly, symboldecoding module 119 stores symbol character data D.sub.3 in a memorybuffer associated with data packet synthesis module 120.

[0180] In the illustrated embodiment, symbol decoding module 119, datapacket synthesis module 120, and timers T.sub.2, T.sub.3, T.sub.4 and T5are each realized using programmed microprocessor and accessible memory134. Similarly, third control module C.sub.3 and the control functionswhich it performs at Blocks I to GG in FIGS. 13A and 13C, are realizedas a programming implementation using techniques well known in the art.

[0181] The function of data packet synthesis module 120 is to use theproduced symbol character data to synthesize a group of data packets forsubsequent transmission to its mated base unit by way of data packettransmission circuit 121.

[0182] In the illustrative embodiment, each synthesized data packet isformatted as shown in FIG. 8N. In particular, each data packet in eachdata packet group comprises a number of data fields, namely: Start ofPacket Field 220 for containing a digital code indicating the beginningof the transmitted data packet; Transmitter Identification Number Field221 for containing a digital code representative of the Transmitting BarCode Symbol Reader; Data Packet Group Number Field 222 for containing adigital code (i.e., a first module number) assigned to each particulardata packet group being transmitted; Data Packet Transmission No. Field223 for containing a digital code (i.e., a second module number)assigned to each data packet in each data packet group beingtransmitted; Symbol Character Data Field 224 for containing digital coderepresentative of the symbol character data being transmitted to thebase unit; Error Correction Code Field 225 for containing a digitalerror correction code for use by the receiving base unit to determine iferror in data packet transmission has occurred; and End of Packet Fieldfor 226 for containing a digital code indicating the end of thetransmitted data packet.

[0183] After the data packet synthesis module synthesizes a group ofdata packets as described above, the third control module C.sub.3provides enable signal E.sub.7 to data packet transmission circuit 121.As illustrated in FIG. 9, the data packet transmission circuit comprisesa carrier signal generation circuit 230, a carrier signal frequencymodulation circuit 231, a power amplifier 232, a matching filter 233,and a quarterwave (.lambda./4) transmitting antenna element 234. Thefunction of the carrier signal generation circuit 230 is to generate acarrier signal having a frequency in the RF region of theelectromagnetic spectrum. In the illustrative embodiment, the carrierfrequency is about 912 Mhz, although it is understood that thisfrequency may vary from one embodiment of the present invention, toanother embodiment thereof. As the carrier signal is being transmittedfrom transmitting antenna 234, frequency modulation circuitry 231modulates the instantaneous frequency of the carrier signal using thedigital data sequence (i.e., digital data stream) 235 constituting thegroup of data packets synthesized by the data packet synthesis module120. The function of the power amplifier is to amplify the power of thetransmitted modulated carrier signal so that it may be received by abase unit of the present invention located within a predetermined datatransmission range (e.g., from about 0 to about 30 feet), illustrated inFIGS. 2, 4, 5A, and 6D, in particular.

[0184] In general, each base unit of the present invention performs anumber of functions. First, the base unit receives the modulated carriersignal transmitted from a hand-supportable bar code symbol readingdevice within the data reception range of the base unit. Secondly, thebase unit demodulates the received carrier signal to recover the datapacket modulated thereunto during signal transmission. Thirdly, the baseunit analyzes each of the recovered data packets to determine whetherthe received carrier signal was transmitted from a hand-supportable barcode symbol reading device preassigned to the receiving base unit.Fourthly, the base unit recovers the symbol character data from at leastone data packet in a transmitted group of data packets, and ascertainingthe reliability of the recovered symbol character data. Fifthly, thebase unit generates an acoustical acknowledgement signal S.sub.ACK thatcan be audibly perceived by the operator of the transmitting bar codesymbol reading device while located in the data reception range of thebase unit. Finally, the base unit transmits the received symbolcharacter data to a host computer system or like device. Each of thesefunctions will be described in greater detail during the detaileddescription of the Main System Control Routine set forth in FIGS. 13A to13C.

[0185] In order to better understand the functions performed by the barcode symbol reading device and base unit of the present invention, itwill be helpful to first describe the principles underlying the datacommunication method of the present invention, and thereafter discussthe role that the base unit plays in carrying out this communicationmethod.

[0186] In a typical application of the present invention, a (resultant)system of bar code symbol reading subsystems are installed in physicalproximity with each other. Typically each system is a point of sale(POS) station including a host computer system interfaced with a baseunit of the present invention and an automatic hand-supportable bar codesymbol reading device preassigned to one of the base units. To register(i.e., associate) each bar code symbol reading device with a preassignedbase unit, each bar code symbol reading device is preassigned a unique“Transmitter Identification Code” which is stored in a memory in theassigned base unit during a set-up procedure. In the illustrativeembodiment, the carrier frequency of the data packet transmitter in eachbar code symbol reading device is substantially the same for all barcode symbol reading devices in the resultant system. Also, the datapacket transmission range of each bar code symbol reading device will besubstantially greater than the distance between each bar code symbolreading device and a neighboring base unit to which the bar code symbolreading unit is not assigned. Consequently, under such operatingconditions, at any instance in time, any base station in the resultantsystem may simultaneously receive two or more packet modulated carriersignals which have been transmitted from two or more bar code symbolreading devices being used in the resultant system. These bar codesymbol reading devices may include the bar code symbol reading devicepreassigned to the particular base unit as well as neighboring bar codesymbol reading devices. Thus due to the principles of data packettransmission of present invention, there exists the possibility that anyparticular base unit may simultaneously receive two or more differentdata packets at any instant in time, thereby creating a “packetinterferences” situation.

[0187] In order to ensure that each base unit in the resultant system iscapable of receiving at least one data packet from a data packet grouptransmitted by its preassigned bar code symbol reading device (i.e.,without risk of interference from neighboring bar code symbol readingdevice transmitters), the unique “data packet group” transmission schemeshown in FIG. 10 is employed. As shown, upon the successful reading of afirst bar code symbol and the production of its symbol character dataD.sub.3, data packet synthesis module 120 aboard the bar code symbolreading device automatically produces a first (i.e., N=1) group of(three) data packets, each having the packet format shown in FIG. 9.Thereafter, the data packet transmission circuit 121 uses the digitaldata bit stream, representative of the synthesized data packet group, tomodulate a carrier signal transmitted from the hand-supportable bar codesymbol reading device.

[0188] In the illustrative example shown FIG. 10, only the second andthird data packets of the group sent over the modulated carrier signalare shown as being received by the preassigned base unit. As shown inthis drawing, the base unit transmits the recovered symbol characterdata D.sub.3 to its host computer system, upon receiving the second datapacket in the transmitted group of data packets. Thereafter, the baseunit produces an acoustical acknowledgement signal S.sub.ACK ofsufficient intensity that it can be easily heard by the operator of thebar code symbol reading device that transmitted the received datapacket. The function of the acoustical acknowledgment signal is toprovide the operator with an audible acknowledgement that the symbolcharacter data D.sub.3 (associated with the recently read bar codesymbol) has been received by the base unit and transmitted to its hostcomputer system for processing and or subsequent storage. Notably, whilethe third data packet N.sub.3 is also received by the base unit, theavailable acknowledgement signal S.sub.ACK and symbol character datatransmission is not produced as packet N.sub.3 contains redundantinformation already received by the second packet N.sub.2 of the samegroup.

[0189] In the preferred embodiment, the pitch of the transmittedacoustical acknowledgement signal S.sub.ACK is uniquely specified andassigned to a particular bar code symbol reading unit. This way theoperator of each bar code symbol reading (sub)system can easilyrecognize (i.e., discern) the audible acoustical acknowledgement signalproduced from the base unit preassigned to his or her bar code symbolreading device. At the same time, this pitch assignment scheme allowseach operator to ignore audible acoustical acknowledgment signalsproduced from neighboring base units not mated with his or her portablebar code symbol reading device. If after reading a bar code symbol, theoperator does not see the visual “good read” indication light on itsdevice “flash” or “blink” and immediately thereafter hear itspreassigned acoustical acknowledgement signal emanate from its baseunit, then the operator is implicitly informed that the symbol characterdata of the read bar code symbol was not successfully received by thebase unit. In response to such an event, the operator simply rereads thebar code symbol and awaits to hear the acoustical acknowledgment signalemanating from the base unit.

[0190] Notably, it may even be desirable in some operating environmentsto produce acoustical acknowledgement signals in the form of a uniqueseries of notes preassigned to a bar code symbol reading device and its“mated” base unit. The pitch or note sequence assigned to each matedbase unit and bar code symbol reading device can be stored in a memory(e.g., EPROM) realized in the base unit, and can be programmed at thetime of system set-up and modified as required. Preferably, each pitchand each note sequence is selected so that it can be readilydistinguished and recognized by the operator to which it is uniquelydirected.

[0191] Also shown in FIG. 10 is the case where the bar code symbolreading device reads a second bar code symbol and then transmits asecond (N=2) group of data packets. However, due to interference onlythe third data packet in the second transmitted group of data packets isreceived at the respective base unit. Despite such group transmissionerrors (e.g., due to channel corruption or non-radio transmissiveobstructions), the base unit as shown is nevertheless able to recoverthe transmitted symbol character data. Upon receiving the third datapacket, recovering the packaged symbol character data and transmittingthe same to the host computer system, the bar code symbol reading devicegenerates an acoustical acknowledgement signal having a pitch or notesequence that the operator can hear and recognize as an indication thatthe data packet reception was successful.

[0192] In FIGS. 11 and 12, the data packet transmission and receptionscheme of the present invention is shown for the case of three stationsystem. In the best case scenario shown in FIG. 11, the group of datapackets transmitted from each bar code symbol reading device istransmitted at a time when there are no neighboring bar code symbolreading devices transmitting data packets. This case will occur mostfrequently, as the total transmission times for each group of datapackets is selected to be substantially smaller than the random timedurations lapsing naturally between adjacent data packet transmissionsfrom neighboring bar code symbol reading devices. This fact isillustrated in FIG. 11, in which (i) a group of data packets from barcode reading device No. 1 are transmitted between adjacent groups ofdata packet transmitted from bar code symbol reading devices Nos. 2, 3and 4 without the occurrence of data packet interference (i.e.,collision). In most instances, the time delay between consecutive groupsof data packets transmitted from any particular bar code symbol readingdevice, will be sufficient to permit a neighboring bar code symbolreading device to transmit at least one data packet to its base unitwithout the occurrence of data packet interference.

[0193] In accordance with the data transmission scheme of the presentinvention, data packet interference is minimized by the random presenceof interference-free time slots, during which a transmitted data packetcan be received at its respective base unit without neighboring packetinterference. However, the present invention employs additional measuresto further reduce the likelihood of data packet interference. Suchmeasures are best appreciated when considering a high-density datapacket transmission environment, in which a number of closely situatedneighboring bar code symbol readers are each attempting to transmit agroup of data packets to its preassigned base unit. In general, suchoperating conditions would present a worst case scenario for the datapacket transmission scheme of the present invention.

[0194] In the worst case scenario shown in FIG. 12, each of the fourneighboring bar code symbol reading devices is assumed to consecutivelyread two bar code symbols and simultaneously begin the transmission ofthe first data packet in the first group of data packets correspondingto the first read bar code symbol. As mentioned above, each data packetis formatted essentially the same way, has substantially the same packetwidth, and is transmitted on a carrier signal having a frequency whichis substantially the same as all other carrier signals transmittedthroughout the system. In accordance with the principles of the presentinvention, the data packet transmission circuit 121 in each bar codesymbol reading device is preprogrammed to transmit adjacent data packetswith a different “time delay”, as shown in FIG. 12. This condition isachieved throughout the resulting system by assigning a different PacketTime Delay to each having a different Transmitter Identification Number,and then programming the bar code symbol reading device with thepreassigned Packet Time Delay parameter. As illustrated in FIG. 12, thevalue of the Packet Time Delay parameter programmed in each bar codesymbol reading device is selected so that, when the neighboring bar codesymbol reading devices simultaneously transmit groups of data packets,each base unit in the resulting system is capable of receiving at leastone data packet (in a group thereof) that has been transmitted from itspreassigned bar code symbol reading device. In general, the data packetdelay scheme of the present invention involves selecting and programmingthe Packet Time Delay parameter in each bar code symbol reading deviceso that each base unit is periodically provided a vacant time slot,during which one transmitted data packet in each group thereof can bereceived free of “data packet interference”, as shown in FIG. 12. Theadvantage of providing a packet time delay among the data packets ofeach transmitted group thereof is that rereading and retransmission ofbar code symbols is effectively minimized under the data packettransmission scheme of the present invention.

[0195] Having described the detailed structure and internal functions ofautomatic bar code symbol reading device of the present invention, theoperation of the control system thereof will now be described whilereferring to the system block diagram shown in FIG. 8 and control BlocksA to GG in FIGS. 13A to 13C.

[0196] Beginning at the START block of Main System Control Routine andproceeding to Block A of FIG. 13A, the bar code symbol reading system is“initialized”. This initialization step involves activating systemoverride circuit 100, first control circuit C.sub.1 and oscillatorcircuit 101. It also involves deactivating (i.e., disabling): (i) allexternal system components except the range selection circuit 115 andsystem override signal producing means 103 (i.e., infrared sensingcircuit 105, laser scanning circuit 108, and photoreceiving circuit109); (ii) all subcircuits aboard ASIC chip 133 not associated with thesystem override circuit 100, such as object detection circuit 107, A/Dconversion circuitry 110, second control circuit C.sub.2 and bar codepresence detection circuit 111; and (iii) third control module 114,symbol decoding module 119 and data packet synthesis module 120. Inaddition, all timers T.sub.1, T.sub.2, T.sub.3, T.sub.4, and T.sub.5 arereset to t=0.

[0197] Proceeding to Block B in FIG. 13A, the first control circuitC.sub.1 checks to determine whether it has received control activationsignal A.sub.0=1 from system override detection circuit 100. If thissignal is received, then the first control circuit C.sub.1 returns toBlock A. If control activation signal A.sub.0=1 is not received, then atBlock C the first control circuit C.sub.1 activates (i.e., enables) theobject detection circuit by producing E.sub.0. At Block D, the objectdetection circuit receives either the long range mode selection signalor the short range mode selection signal produced by the range selectioncircuit 115 and sets the appropriate sensitivity level of the circuit.At Block E, the first control circuit C.sub.1 determines whether it hasreceived control activation signal A. sub.1=1, indicating that an objecthas been detected within the selected range of the scan field. If thiscontrol activation signal is not received, then at Block F the firstcontrol circuit C.sub.1 determines whether its has received controlactivation signal A.sub.0=1. If the first control circuit C.sub.1 hasreceived control activation signal A.sub.0=1, then the control systemreturns to Block A in FIG. 13A, as shown. If the first control circuitC.sub.1 has not received control activation signal A.sub.0=1, then thecontrol system returns to Block E, as shown.

[0198] If at Block E the first control circuit C.sub.1 has receivedfirst control activation signal A.sub.1=1, then at Block G the firstcontrol circuit C.sub.1 (i) deactivates (i.e., disables) the objectsensing circuit and the object detection circuit using disabling signalE.sub.0=0, (ii) activates (i.e., enables) laser scanning circuit 108,photoreceiving circuit 109 and A/D signal conversion circuit 110 usingenable signal E.sub.1=1, (iii) activates bar code detection circuit 111and second control circuit C.sub.2 using enable signal E.sub.2=1, and(iv) starts timer T.sub.1 maintained in the first control circuitC.sub.1. This permits the bar code symbol reading device to collect andanalyze scan data signals for the purpose of determining whether or nota bar code is within the scan field. If at Block H the second controlcircuit C.sub.2 does not receive control activation signal A.sub.2S=1 orA.sub.2L=1 from the bar code detection circuit within time periodT.sub.1, indicating that a bar code symbol is detected in the selectedrange of the scan field, then the control system returns to Block Athereby returning system control to the first control unit C.sub.1, asshown in FIG. 13A. If at Block H the bar code symbol detection circuit111 provides the second control circuit C.sub.2 with control activationsignal A.sub.2S=1 or A.sub.2L=1, as the case may be, then second controlcircuit C.sub.2 activates (i.e., enables) third control module C.sub.3(i.e., microprocessor 134) using enable signal E.sub.3=1.

[0199] At Block J, the third control module C.sub.3 polls (i.e., reads)the parameter R set by range selection circuit 115 and sets a rangelimit flag in the symbol decoding module 119. At Block K third controlmodule C.sub.3 activates the symbol decoding module 119 using enablesignal E.sub.4, resets and restarts timer T.sub.2 permitting it to runfor a second predetermined time period (e.g., 0<T.sub.2<1 second), andresets and restarts timer T.sub.3 permitting it to run for a thirdpredetermined time period (e.g., 0<T.sub.3<5 seconds). At Block L, thethird control module checks to determine whether control activationsignal A.sub.3=1 is received from the symbol decoding module 119 withinT.sub.2=1 second, indicative that a bar code symbol has beensuccessfully read (i.e., scanned and decoded) within the allotted timeperiod. If control activation signal A.sub.3=1 is not received withinthe time period T.sub.2=1 second, then at Block M third control moduleC.sub.3 checks to determine whether control activating signal A.sub.2=1is received. If a bar code symbol is not detected, then the controlsystem returns to Block A, causing a state transition from bar codereading to object detection. However, if at Block M the third controlmodule C.sub.3 receives control activation signal A.sub.2=1, indicativethat a bar code once again is within the scan field, then at Block N thethird control module C.sub.3 checks to determine whether time periodT.sub.3 has elapsed. If it has, then the control system returns to BlockA. If, however, time period 0.1toreq.T.sub.3 .1toreq.5 seconds has notelapsed, then at Block K the third control module C.sub.3 resets andrestarts timer T.sub.2 to run once again for a time period0.1toreq.T.sub.2.1 toreq.1 second, while T.sub.3 continues to run. Inessence, this provides the device at least another opportunity to read abar code present within the scan field when the control system is atcontrol Block L. During typical bar code reading applications, thecontrol system may progress through the control loop defined by BlocksK-L-M-N-K several times before a bar code symbol in the scan field isread within the time period allotted by timer T.sub.3.

[0200] Upon receiving control activation signal A.sub.3=1 from symboldecoding module 119, indicative that a bar code symbol has beensuccessfully read, the control system proceeds to Block O in FIG. 13B.At this stage of the system control process, the third control moduleC.sub.3 continues activation of laser scanning circuit 108,photoreceiving circuit 109, and A/D conversion circuit 110, whiledeactivating symbol decoding module 119 and commencing activation ofdata packet synthesis module 120. While the laser beam is continuouslyscanned across the scan field, the operations at Blocks P to V describedbelow, are carried out in a high speed manner under the orchestration ofcontrol module C.sub.3.

[0201] As indicated at Block P, data packet synthesis module 120 firstsets the Packet Number to “1”, and increments the Packet Group Numberfrom the previous number. Preferably, the data packet synthesis modulekeeps track of (i.e., manages) the “Packet Number” using a firstmodulo-N counter realized by programmable microprocessor 134, while itmanages the “Packet Group Number” using a second modulo-M counter alsorealized by programmed microprocessor 134. In the illustrativeembodiment, the first modulo counter has a cyclical count range of N=2(i.e., 0,1,2,0,1,2, . . . ), whereas the second modulo counter has acyclical count range of M=10 (i.e., 0,1,2,3,4,5,6,7,8,9,0,1,2, . . . ).At Block Q, the data packet synthesis module synthesizes or constructs adata packet having a packet format as shown in FIG. 9, i.e., consistingof symbol character data, a Transmitter Identification Number, a PacketNumber, a Packet Group Number, check character, and Packet Start and End(i.e., framing) Characters. After the data packet has been formed andthe digital data sequence constituting the same is buffered, the thirdcontrol module C.sub.3 activates at Block R the data packet transmissioncircuit. Thereafter at Block S, the data packet synthesis module outputsthe buffered digital data sequence (of the first synthesized data packetof the group) to the data packet transmission circuit, which uses thedigital data sequence to modulate the frequency of the carrier signal asit is being transmitted from the bar code symbol reading device, to itsmated base unit, as described hereinabove, and then automaticallydeactivates itself to conserve power.

[0202] At Block T, the third control module C.sub.3 determines whetherthe Packet Number counted by the first module counter is less than “3”.If the Packet Number of the recently transmitted data packet is lessthan “3”, indicative that at most only two data packets in a specificgroup have been transmitted, then at Block U the data packet synthesismodule 120 increments the Packet Number by +1. At Block V, the thirdcontrol module then waits for a time delay T.sub.5 to lapse prior to thecontrol system returning to Block Q, as shown in FIG. 13B. Notably, theoccurrence of time delay T.sub.5 causes a delay in transmission of thenext data packet in the data packet group. As illustrated in FIG. 12,the duration of time delay T.sub.5 is a function of the (last two digitsof the) Transmitter Number of the current data packet group, and thus isa function of the bar code symbol reading device transmitting symbolcharacter data to its mated base unit. For the case of three data packetgroups, time delay T5 will occur between the transmission of the firstand second data packets in a packet group and between the transmissionof the second and third data packets in the same packet group.

[0203] Returning to Block Q, the data packet synthesis modulesynthesizes or constructs the second data packet in the same data packetgroup. After the second data packet has been formed and the digital datasequence constituting the same is buffered, the third control moduleC.sub.3 reactivates at Block R the data packet transmission circuit.Thereafter at Block S, the data packet synthesis module outputs thebuffered digital data sequence (of the second synthesized data packet)to the data packet transmission circuit, which uses the digital datasequence to modulate the frequency of the carrier signal as it is beingtransmitted from the bar code symbol reading device, to its mated baseunit, and thereafter automatically deactivates itself. When at Block Tthird control module C.sub.3 determines that the Packet Number is equalto “3”, the control system advances to Block W in FIG. 13C.

[0204] At Block W in FIG. 13C, the third control module C.sub.3continues activation of laser scanning circuit 108 photoreceivingcircuit 109, and AID conversion circuit 110 using control overridesignals C.sub.3/C.sub.1, and deactivates symbol decoding module 119,data packet synthesis module 120 and the data packet transmissioncircuit 121 using disable signals E.sub.4=0, E.sub.5=0 and E.sub.6=0,respectively. Then at Block X the third control module C.sub.3determines whether control activation signal A.sub.1=1, indicating thatan object is present in the selected range of the scan field. If thiscontrol activation signal is not provided to the third control moduleC.sub.3, then the control system returns to Block A, as shown. Ifcontrol activation signal A.sub.1=1 is received, then at Block Y thethird control module C.sub.3 reactivates the bar code symbol detectioncircuit using override signal C.sub.3/C.sub.2, and resets and restartstimer T.sub.3 to start running over its predetermined time period, i.e.,0<T.sub.3 <5 seconds, and resets and restart timer T.sub.4 for apredetermined time period 0<T.sub.4<3 seconds.

[0205] At Block Z in FIG. 13C, the third control module C.sub.3 thendetermines whether control activation signal A.sub.2=1 is produced fromthe bar code symbol detection circuit 111 within time period T.sub.4,indicating that a bar code symbol is present in the selected range ofthe scan field during this time period. If this signal is not producedwithin time period T.sub.4, then at Block AA the third control moduleC.sub.3 deactivates the bar code symbol detection circuit using overridesignal C.sub.3/C.sub.2, and reactivates the bar code symbol decodingmodule 119 using enable signal E.sub.4=1. At Block BB, the third controlmodule C.sub.3 resets and restarts timer T.sub.2 to run over itspredetermined time period, i.e., 0<T.sub.2<1 second. At Block CC thethird control module C.sub.3 determines whether control activationsignal A.sub.3=1 is produced by the symbol decoding module within timeperiod T.sub.2, indicating that the detected bar code symbol has beensuccessfully decoded within this time period. If this control activationsignal is not produced within time period T.sub.2, then at Block DD thethird control module C.sub.3 determines whether control activationsignal A.sub.2=1 is being produced from the bar code symbol detectioncircuit, indicating that either the same or another bar code symbolresides within the selected range of the scan field If controlactivation signal A.sub.2=1 is not being produced, then the controlsystem returns to Block A, as shown. However, if this control signal isbeing produced, then at Block EE the third control module C.sub.3determines whether or not timer T.sub.3 has lapsed, indicating that timewindow to read a bar code symbol without redetecting the object on whichit is disposed, is closed. When this condition exists, the controlsystem returns to Block A in FIG. 13A. However, it time remains on timerT.sub.3, then at Block BB the third control module C.sub.3 resets andrestarts timer T.sub.2 and returns to Block CC. As mentioned above, thecontrol system may flow through the control loop defined by BlocksBB-CC-DD-EE-BB a number of times prior to reading a bar code within timeperiod T.sub.3. When the symbol decoding module produces controlactivation signal A.sub.3=1 within time period T.sub.2, the thirdcontrol module C.sub.3 determines at Block FF whether the decoded barcode symbol is different from the previously decoded bar code symbol. Ifthe decoded bar code symbol is different than the previously decoded barcode symbol, then the control system returns to Block O in FIG. 13B. Ifthe currently decoded bar code symbol is not different than thepreviously decoded bar code symbol, then the third control moduleC.sub.3 determines whether timer T.sub.3 has lapsed. If the timerT.sub.3 has not lapsed, then the control system returns to Block BB andreenters the control flow defined at Blocks BB through GG, attemptingonce again to detect and read a bar code symbol on the detected object.However, if at Block GG timer T.sub.3 has lapsed, then the controlsystem returns to Block A in FIG. 13A.

[0206] Having described the operation of the illustrative embodiment ofthe automatic hand-supportable bar code reading device of the presentinvention, it will be helpful to describe at this juncture the variousconditions which cause state transitions to occur during its operation.In this regard, reference is made to FIG. 14 which provides a statetransition diagram for the illustrative embodiment.

[0207] As illustrated in FIG. 14, the automatic hand-supportable barcode reading device of the present invention has four basic states ofoperation namely: object detection, bar code symbol presence detection,bar code symbol reading, and symbol character data transmission/storage.The nature of each of these states has been described above in greatdetail.

[0208] Transitions between the various states are indicated bydirectional arrows. Besides each set of directional arrows aretransition conditions expressed in terms of control activation signals(e.g., A.sub.1, A.sub.2S or A.sub.2L and A.sub.3, and where appropriate,state time intervals (e.g., T.sub.1, T.sub.2, T.sub.3, T.sub.4, andT.sub.5). Conveniently, the state diagram of FIG. 14 expresses mostsimply the four basic operations occurring during the control flowwithin the system control program of FIGS. 13A to 13C. Significantly,the control activation signals A.sub.1, A.sub.2S A.sub.2L and A.sub.3 inFIG. 14 indicate which events within the object detection and/or scanfields can operate to effect a state transition within the allotted timeframe(s), where prescribed.

[0209] Referring now to FIGS. 15 to 15C, the base unit of the firstillustrative embodiment of the present invention will be described. Asshown, base unit 3 is realized in the form of a scanner stand comprisingsupport frame 240 releasibly connected to a base support/mounting plate241 by way of a snap fit fastening mechanism illustrated in FIGS. 15Band 15C. In the illustrative embodiment, support frame 240 is formed asan injection molded shell, in which a handle portion support structureis realized by a first support recess 243; whereas a head portionsupport structure is realized by a second support recess 245. As shownin FIG. 15, first support recess 243 is disposed above base portion 245and inclined at a first acute angle B.sub.1 with respect thereto, whilesecond support recess 245 is disposed above base portion 245 andinclined at a second acute angle B.sub.2 with respect thereto.

[0210] As best shown in FIG. 15, first support recess 243 is formed by afirst substantially planar support surface 246 surrounded by theprojection of opposing side walls 247A and 247B and rear wall 247C,extending above planar support surface 246 in a perpendicular fashion.The function of first support recess 243 is to receive and support thehandle portion of handsupportable bar code reading device. Similarly,second support recess 245 is formed by a second substantially planarsupport surface 248 surrounded by the projection of opposing side walls249A and 249B and front wall surface 249C extending above planar supportsurface 248 in a perpendicular fashion.

[0211] The function of support recess 245 is to receive and support thehead portion of handsupportable bar code reading device 2. Front wallprojection 249C is slightly lower than side wall projections 249A and249B to ensure that the transmitted IR signal from IR LED 148 is freelytransmitted through an aperture stop 250 formed in the head portion ofthe housing, whereas the reflected IR signal passes through an aperturestop 251 and is detected by IR photodiode 150 in the head portion of thehand-supportable housing. At the same time, this structural feature ofthe scanner support stand ensures that visible laser light is projectedand collected through light transmissive window 11 without obstruction,i.e., when the automatic bar code reading device is operated in itsautomatic hands-free mode, shown in FIG. 28, in particular.

[0212] In order to ensure that bar code reading device 2 is securely,yet releasably supported within support recesses 243 and 245 and noteasily knocked out of the scanner support stand during the hands-freemode of operation, first and second magnetic elements 255 and 256 arepermanently mounted to the underside of planar support surfaces 246 and248, respectively, as illustrated in FIG. 15C. With this arrangement,magnetic flux of constant intensity continuously emanates from supportrecesses 243 and 245. As a result, when the handle and head portions ofthe bar code reading device are placed within support recesses 243 and245, a ferrous element 257 in handle portion 9B is magneticallyattracted to magnetic element 255, while ferrous element 258 on headportion 9A is magnetically attracted to magnetic element 256. Themagnetic force of attraction between these elements is selected so thata desired degree of force is required to lift the automatic bar codereading device out of scanner support stand, while preventing accidentaldisplacement of the device from the scanner support stand during use inthe hands-free mode of operation.

[0213] As illustrated in FIGS. 15B and 15C, base mounting plate 241 isformed as a thin planar structure having perimetrical dimensionssubstantially equal to the perimetrical dimensions of the base portionof support frame 240. At the front and rear end portions of base plate241, a pair of projections 259 and 260 extend perpendicularly, as shown.These projections have horizontal flanges which are adapted to snap fitinto horizontal grooves formed on the interior surfaces of front andrear walls 261 and 262, as shown in FIGS. 15A to 15C.

[0214] To facilitate mounting of base plate 241 on a vertical planarmounting surface, a pair of spaced apart mounting holes 263A and 263Bare provided. To facilitate attachment of base plate 241 to a pivotaljoint assembly 265 associated with pedestal base 266, as illustrated inFIGS. 28 to 29B, a set of mounting holes (not shown) are formed in thebase plate itself. To facilitate support of base plate 241 upon ahorizontal support surface, as illustrated in FIGS. 27A TO 27D, a set offour rubber feet (not shown) may be adhesively applied to the undersidecomers of the base plate.

[0215] In order to perform the data packet reception, processing,retransmission, and acknowledgement functions of base unit 3 describedabove, a circuit board 270 populated with electronic circuitry isconcealed within the interior volume contained between the interiorsurface of support stand portion 245 and the upper surface of base plate241. In the illustrated embodiment, PC board 270 contains electroniccircuitry for realizing each of the functions represented by the blockshown in the system diagram of FIG. 16. As shown in FIG. 15A, flexiblecommunication and power supply cables 7 and 8 are routed throughaperture 271 formed in the lower portion of rear wall of the supportframe, as shown in FIG. 15C, and connect to the electronic circuitry onPC board 270.

[0216] In FIG. 16, the system architecture of base unit 3 isschematically represented. As shown, base unit 3 comprises a numberhardware and software components, namely: a power supply circuit 273; areceiving antenna element 274; an RF carrier signal receiver circuit 275base unit identification number storage unit 276; a data packet storagebuffer 277; a base unit system controller 278; a data packet frame checkmodule 279; a transmitter number identification module 280; a datapacket number identification module 281; a symbol character dataextraction module 282; a data format conversion module 283; a serialdata transmission circuit 284; and an acoustical acknowledgement signalgeneration circuit 285. In the illustrative embodiment, a programmedmicroprocessor and associated memory (i.e., ROM and RAM), indicated byreference numeral 286, are used to realize the base unit systemcontroller 278 and each of the above-described data processing modules277 to 283. The details of such a programming implementation are knownby those with ordinary skill in the art to which the present inventionpertains.

[0217] As shown in FIG. 16, receiving antenna element 274 iselectrically coupled to an input signal port of radio receiver circuit275 in a conventional manner. In general, the function of radio receivercircuit 275 is to receive and process the data-packet modulated carriersignal transmitted from a remote bar code symbol reader to its matedbase unit. The radio receiver circuit of the illustrative embodiment canbe realized by configuring several commercially available IC chipstogether, although it is understood that there are certainly other waysin which to realize the basic functions of this circuit. As shown inFIG. 16A, receiving antenna 274 is connected to a matching filtercircuit 287 realized using miniature inductive and capacitivecomponents. The matching filter circuit is tuned to pass a 912 MHz RFcarrier signal transmitted from the data packet transmission circuit 121of the bar code symbol reading device. The output of matching filtercircuit 287 is connected to the input of a first IC chip 288 whichconverts (i.e., translates) the frequency spectrum of the receivedmodulated carrier signal down to an intermediate frequency band, forsubsequent signal processing. In the illustrative embodiment, the firstIC chip 288 is realized using the MAF2001 IC chip from Motorola, Inc.,and provides a low noise amplifier 289, an double balanced mixer 290. Alocal oscillator 292 is needed to provide a local oscillator signal ofabout 922.7 MHZ for use in frequency down-conversion in the doublebalanced mixer 290. Typically, a matching filter 291 is commonlyrequired between local oscillator 292 and mixer 290. As shown in FIG.16A, the output of the first IC chip is provided to a band-pass filter293 tuned to about 10.7 MHZ, the intermediate frequency band of eachbase unit. The intermediate signal is then provided as input to a secondIC chip 294. In the illustrative embodiment, the second IC chip 294 isrealized using the MC13156 IC chip commercially available from Motorola,and provides inter alia an amplification circuit, a quadraturedemodulation circuit 295, a binary thresholding circuit 296, and carriersignal detection circuit 297. The function of the second IC chip isfour-fold. The first function of the second IC chip is to filter andamplify the intermediate signal to produce in-phase and quadrature phasesignal components for use in digital data recovery. The second functionof the second IC chip is to recover an analog data signal at the baseband portion of the spectrum, by providing the in-phase andquadrature-phase signal components to the quadrature demodulationcircuit 295. Suitable quadrature demodulation circuitry for use inpracticing the present invention is disclosed in U.S. Pat. No. 4,979,230to Marz, which is incorporated herein by reference in its entirety. Asillustrated in FIG. 16A, the third function of the second IC chip is toconvert the analog data signal produced from quadrature demodulationcircuit 295 into a digital data signal using a binary-level thresholdingcircuit 296. The fourth function of the second IC chip is to analyze theincoming signal from the output of band-pass filter 293 in order todetect the incoming carrier signal and produce a carrier detect signalA.sub.7 to the base unit system controller 278. In order to produce aCMOS compatible signal, the recovered digital data signal produced fromsecond IC chip 294 is amplified by a current amplification circuit 298that is operative whenever a carrier signal is detected (i.e.,A.sub.7=1). As shown in FIG. 16, the output of current amplificationcircuit 298 is a serial data stream that is clocked into data packetstorage buffer 277 under the control of base unit system controller 278.In general, the data packet storage buffer 277 can be realized using acommercially available Universal Asynchronous Receiver/Transmitter(UART) device. The primary function of data packet buffer memory 277 isto buffer bytes of digital data in the produced digital data stream.

[0218] In the illustrative embodiment, it necessary to provide a meanswithin the base unit housing, to recharge the batteries contained withinthe hand-supportable housing of the portable bar code symbol readingdevice. Typically, DC electrical power will be available from the hostcomputer system 6, to which the base unit is operably connected by wayof flexible cables 7 and 8. An electrical arrangement for achieving thisfunction is set forth in FIG. 16. As shown, power supply circuit 273aboard the base unit of the present invention comprises a conventionalcurrent chopper circuit 299, a high-pass electrical filter 300 inparallel therewith, and a primary inductive coil 301 in parallel withthe high-pass electrical filter. Low voltage DC electrical powerprovided from the host computer system by way of power cable 8 isprovided to direct current (DC) chopper circuit 299, which is realizedon PC board 270 using high-speed current switching circuits. Thefunction of current chopper circuit 299 is to convert the input DCvoltage to the circuit into a high-frequency triangular-type(time-varying) waveform, consisting of various harmonic signalcomponents. The function of the high-pass electrical filter is to filterout the lower frequency signal components and only pass the higherfrequency signal components to the inductive coil 301. As such, the highfrequency electrical currents permitted to flow through inductive coil301 induce a high voltage thereacross and produce time-varying magneticflux (i.e., lines of force). In accordance with well known principles ofelectrical energy transfer, the produced magnetic flux transferselectrical power from the base unit to the rechargeable battery aboardthe bar code symbol reading device, whenever the primary and secondaryinductive coils aboard the base unit and the mated device areelectromagnetically coupled by the magnetic flux. In order to maximizeenergy transfer between the base unit and its mated device duringbattery recharging operations, high permeability materials and wellknown principles of magnetic circuit design can be used to increase theamount of magnetic flux coupling the primary and secondary inductivecoils of the battery recharging circuit.

[0219] Referring to FIG. 16, the function of each of the data processingmodules of base unit 3 will now be described in detail.

[0220] Upon reception of an incoming carrier signal and the recovery ofthe digital data stream therefrom, base unit system controller 278orchestrates the processing of the recovered digital data stream. Asshown in FIG. 16, the operation of data processing modules 279, 280,281, 282 and 283 are enabled by the production of enable signalsE.sub.PFC, E.sub.TID, E.sub.DPID, E.sub.DE, and E.sub.DFC, respectively,from the base unit system controller.

[0221] The primary function of data packet frame check module 279 is toanalyze all of the data bytes in the received data packet, including theStart and End of Packet Fields, and determine whether a complete frame(i.e., packet) of digital data bytes has been recovered from theincoming modulated carrier signal. If so, then data packet frame checkmodule 279 produces activation control signal A.sub.PFC=1, which isprovided to the base unit system controller, as shown in FIG. 16.

[0222] The primary function of the transmitter number identificationmodule 280 is to analyze the data bytes in the Transmitter ID Field ofthe received data packet and determine the Transmitter ID Numberpreassigned to the bar code reading device that transmitted the datapacket received by the base unit. If the Transmitter ID Number of thereceived data packet matches the preassigned Base Unit IdentificationNo. stored in non-volatile memory (i.e., EPROM) 302 aboard the baseunit, then the transmitter number identification module generatescontrol activation signal A.sub.TID=1 which is provided to the base unitsystem controller.

[0223] The primary function of the packet number identification module281 is to analyze the data bytes in the Packet Number Field of thereceived data packet and determine the Packet Number of the data packetreceived by the base unit. This module then advises the base unit systemcontroller that a different packet number was received, representing anew group (e.g., now seen) by producing an encoded signal A.sub.DPIDduring the system control process.

[0224] The primary function of the symbol character data extractionmodule 282 is to analyze the data bytes in the Symbol Character DataField of the received data packet, determine the code represented by thesymbol character data, and provided this symbol character data to thedata format conversion module 283 under the control of the base unitsystem controller during the system control process.

[0225] The primary function of the data format conversion module 283 isto convert the format of the recovered symbol character data, into adata format that can be used by the host computer symbol 6 that is toultimately receive and use the symbol character data. In the bar codesymbol reading system of first illustrative embodiment, the data formatconversion is from ASCII format to RS232 format, although it isunderstood that other conversions may occur in alternative embodiment ofthe present invention. Typically, the data format conversion process iscarried out using a data format conversion table which contains theappropriate data structure conversions.

[0226] The primary function of the serial data transmission circuit 284is to accept the format-converted symbol character data from the dataformat conversion module 283, and transmit the same as a serial datastream over data communication cable 7, to the data input port of thehost computer system 6 (e.g., cash register, data collection device,inventory computer). Preferably, an RS-232 data communication protocolis used to facilitate the data transfer process. Thus the constructionof serial data transmission circuit 284 is conventional and the detailsthereof are well within the knowledge of those with ordinary skill inthe art.

[0227] The primary function of acoustical acknowledgement signalgeneration circuit 285 is to produce an acoustical acknowledgementsignal SA in response to the successful recovery of symbol characterdata from a transmitted data packet. The purpose of the acousticalacknowledgement signal is to notify the user that the transmitted datapacket has been successfully received by its mated base unit. In theillustrative embodiment, the intensity of the acoustical acknowledgementsignal is such that the remotely situated user of the portable bar codesymbol reader can easily hear the acoustical acknowledgement signal inan expected work environment having an average noise floor of at leastabout 50 decibels. Preferably, the pitch of the acousticalacknowledgement signal is within the range of about 1 to about 10kilohertz, in order to exploit the sensitivity characteristics of thehuman auditory apparatus of the user. In the exemplary embodiment, thepitch is about 2.5 kilohertz. Under such conditions, the intensity ofsuch an acoustical acknowledgement signal at its point of generationwill typically need to have an output signal power of about 70 decibelsin order to be heard by the user in a working environment having anaverage noise floor of about 50 decibels and an average noise ceiling ofabout 100 decibels. Acoustical acknowledgement signals of such charactercan be produced from acoustical acknowledgement signal generationcircuit 285, shown in FIG. 285.

[0228] As shown in FIG. 16B, acoustical acknowledgement signalgeneration circuit 285 comprises a number of subcomponents, namely: adecoder circuit 305; a voltage controlled oscillator (VCO) drivercircuit 306; a VCO circuit 307; an output amplifier circuit 308; and apiezo-electric type electro-acoustic transducer 303 having an outputsignal bandwidth in the audible range. The operation (i.e., duration) ofthe acoustical acknowledgment signal generation circuit 285 iscontrolled by base unit system controller 278 using enable signalE.sub.AA. In the illustrative embodiment, enable signal E.sub.AA is adigital word encoded to represent one of a number of possible audiblepitches or tones that are to be generated upon each successful receptionof a transmitted data packet at a mated base station. The function ofdecoder circuit 305 is to decode the enable signal EAA produced by thebase unit system controller and produce a set of voltage signals{V.sub.1 1, V2, . . . , Vn} which correspond to a specified pitchsequence to be produced by electro-acoustic transducer 309. The functionof VCO driver circuit 306 is to sequentially drive VCO circuit 307 withthe produced set of voltages {V.sub.1 1, V2, . . . , Vn} so that VCOcircuit produces over a short time period (e.g., 0.5-1.5 seconds), a setof electrical signals having frequencies that correspond to thespecified pitch sequence to be produced from the electro-acoustictransducer 309. The function of amplifier circuit 308 is to amplifythese electrical signals, whereas the function of electro-acousticaltransducer 309 is to convert the amplified electrical signal set intothe specified pitch sequence for the user to clearly hear in theexpected operating environment. As shown in FIGS. 1 and 15A, the basehousing is preferably provided with an aperture or sound port 304 so asto permit the energy of the acoustical signal from transducer 309 tofreely emanate to the ambient environment of the user. In particularapplication, it may be desired or necessary to produce acousticalacknowledgement signal of yet greater intensity levels that thosespecified above. In such instances, electro-acoustical transducer 309may be used to excite one or more tuned resonant chamber(s) mountedwithin or formed as part of the base unit housing.

[0229] Having described the structure and general functional componentsof base unit 3, it is appropriate at this juncture to now describe theoverall operation thereof with reference to the control process shown inFIG. 17.

[0230] As illustrated at Block A in FIG. 17, radio receiving circuit 275is the only system component that is normally active at this stage ofthe base unit system control process. All other system components areinactive (i.e., disabled), including base unit system controller 278;data packet storage buffer 277, data packet frame check module 279,transmitter number identification module 280, data packet numberIdentification module 281, symbol character data extraction module 282,data format conversion module 283, serial data transmission circuit 284,and acoustical acknowledgement signal generation circuit 285. With theradio receiving circuit activated, the base unit is capable of receivingany modulated carrier signal transmitted from any of the bar code symbolreading devices within the data transmission range of the base unit.

[0231] At Block B in FIG. 17, radio receiving circuit 275 determineswhether it has received a transmitted carrier signal on its receivingantenna element 274. If it has, then the radio receiving circuitgenerates a system controller activation signal A.sub.7, which activatesbase unit system controller 278 and signal amplifier 276 shown in FIGS.16 and 16a, respectively. Then at Block C, the base unit systemcontroller activates (i.e., enables) data packet storage buffer 277 anddata packet frame check module 279 by producing activation controlsignals ESB=1 and E.sub.PFC=1, respectively. At Block D, the base unitsystem controller determines whether it has received an acknowledgement(i.e., control activation signal A.sub.PFC=1) from the data packet framecheck module, indicating that the received data packet is properlyframed. If the received data packet is not properly framed, then thebase unit returns to Block A in order to redetect an incoming carriersignal. However, if the received data packet is properly framed, then atBlock E the base unit system controller enables the transmitter numberidentification module by generating enable signal E.sub.TID=1.

[0232] At Block F, the base unit system controller determines whether ithas received an acknowledgment (i.e., control activation signalA.sub.TID=1) from the transmitter number identification module that thereceived data packet contains the correct transmitter identificationnumber (i.e., the same number assigned to the base unit and stored instorage unit 276). If the Transmitter Identification Number containedwithin the received data packet does not match the base unitidentification number stored in storage unit 276, then the base unitsystem controller returns to Block A whereupon it resumes carrier signaldetection. If, however, the transmitter packet number contained withinthe received data packet matches the base unit identification number,then at Block G the base unit system controller enables the data packetnumber identification module 289 by generating enable signalE.sub.DPID=1.

[0233] At Block H, the base unit system controller determines whether ithas received an acknowledgment (i.e., control activation signalA.sub.DPID=1) from the data packet identification module indicating thatthe received data packet is not a redundant data packet (i.e., from thesame transmitted data packet group). If the received data packet is aredundant data packet, then the base unit system controller returns toBlock A, whereupon carrier signal detection is resumed. If, however, thereceived data packet is not redundant, then at Block I the base unitsystem controller enables the symbol character data extraction module bygenerating enable signal E.sub.DE=1. In response to the generation ofthis enable signal, the symbol data extraction module reads at Block Jthe symbol character data contained in the received data packet, checksthe data for statistical reliability, and the writes the extractedsymbol character data bytes into a storage buffer (not explicitlyshown).

[0234] As indicated at Block K in FIG. 17, the base unit systemcontroller then enables the data format conversion module by generatingenable signal E.sub.DFC=1. In response to this enable signal, the dataformat conversion module converts the data format of the recoveredsymbol character data and then buffers the format-converted symbolcharacter data bytes in a data buffer (not explicitly shown). At Block Lthe base unit system controller enables the serial data transmissioncircuit 284 by generating enable signal E.sub.DT=1. In response to thisenable signal, the serial data transmission circuit transmits theformat-converted symbol character data bytes over communication cable 7using serial data transmission techniques well known in the art, asdiscussed above. When the serial data transmission process issuccessfully completed, the base unit system controller enables at BlockM the acoustical acknowledgement signal generation circuit 285 byproducing enable signal E.sub.AA=1. In response to the production ofthis enable signal, acoustical acknowledgment signal generation circuit285 generates a high intensity acoustical signal having characteristicsof the type described above, thereby informing the user that atransmitted data packet has been received and that the symbol characterdata packaged therein has been successfully recovered and transmitted tothe host computer system. Thereafter, the base unit system controllerreturns to the Block A, as shown.

[0235] The second illustrative embodiment of the base unit shown inFIGS. 4 to 4B will now be described in greater detail with reference toFIGS. 18A to 20D. In general, the base unit of the second illustrativeembodiment is similar to the base unit of the first illustrativeembodiment described above, except for the following differencesdescribed below which reflect additional functionalities provided by thedata collection aspect of the portable base unit.

[0236] As illustrated in FIGS. 18A to 18C, data collection base unit 37comprises a hand-holdable housing 320 which houses the operativeelements of the device to be described below. Housing 320 has a toppanel 320A, bottom panel 320B, front and rear panels 320C and 320D, andtwo opposing side panels 320E and 320F, as shown. A 4.times.4 membranekeypad 321 is mounted through the lower portions of top panel 320E formanual entry of alphanumeric type data including, for example, datarelated to bar code symbols. Notably, a separate switch is provided forturning the device ON and OFF. Above the keypad, there is mounted an LCDtype 1.times. 16 character display 322 for visually displaying dataincluding (i) data being manually entered through keypad 321, (ii)operator messages and (iii) data entry verification messages which willbe described in greater detail hereinafter.

[0237] Through front panel 320C adjacent character display 322, adata-output communication port 323 is provided. In the illustrativeembodiment, data-output communication port 323 includes a 9-pin maleconnector 324, to which one end of communication cable 7 is connected,while the other end thereof is connected to the data-input port of ahost computer system, such as point of sale (POS) cash register/computer6. As will be described in greater detail hereinafter, data-outputcommunication port 323 is particularly adapted for transmittingcollected symbol character data stored in base unit 37, overcommunication cable 7 and through the data-input communication port ofhost computer system.

[0238] As shown in FIG. 18A, a pair of D-rings 325A and 325B arerotatably mounted to the rear end of the housing for convenientlysupporting the data collection base unit on the operator's body while,for example, taking inventory. In this way, a cord, shoulder strap orbelt strap can be attached to the D-rings. With this housing supportarrangement, the user can simply pickup the hand-holdable datacollection base unit in one hand and manually enter data through thekeypad using one's thumb, while viewing the character display screen.

[0239] While not visually shown in FIGS. 18A, 18B or 18C, datacollection base unit 37 includes a battery-power storage unit 326realized, in the illustrative embodiment, as four AA type 1.5 voltbatteries. These batteries are contained within a battery carrierattached to a hinged panel formed on the bottom panel 320B of thehousing. Access to the battery carrier is achieved by simply opening thehinged panel, which after replacement of batteries, can be snapped shut.

[0240] In FIG. 19, the system architecture of data collection base unit37 is schematically represented. As shown, data collection base unit 37comprises a number hardware and software components, namely: a powersupply circuit 326; low battery detection circuit 327; power conversioncircuit 328; a data entry means in the form of 4.times.4 keyboard 321;LCD display 323; host detection circuit 329; power switch 330; 9 pinconnector 324; a non-volatile data storage means (e.g., EPROM) 331; datastorage memory (e.g., 32 Kilobyte RAM) 332; power fail RAM protectioncircuit 333; storage capacitor 334; receiving antenna element 335; an RFcarrier receiving circuit 336; a data packet storage buffer 338; a baseunit system controller 339; a data packet frame check module 340; atransmitter number identification module 341; a packet group numberidentification module 342; a symbol character data extraction module343; a data format conversion module 344; a serial data transmissioncircuit 345; and an acoustical acknowledgement signal generation circuit346. In the illustrative embodiment, a programmed microprocessor andassociated memory (i.e., ROM and RAM), indicated by reference numeral347, are used to realize the base unit system controller 340 and each ofthe above-described data processing and storage modules 339 to 344.Notably, a base unit ID register for storing the unique ID Numberpreassigned to the base unit, is realized using available memory inEPROM 331. The details of such a programming implementation are known bythose with ordinary skill in the art to which the present inventionpertains. System elements 335 to 346 in base unit 37 are structurallyand functionally the same as system elements 274 to 285 in base unit 3,and thus do not require further description or explanation.

[0241] As shown in FIG. 19, data entry keypad 321 and character display322 are each operably connected to base unit system controller 340, forentering and displaying data, respectively, as hereinbefore described.Data-output communication port 324 is connected to data transmissioncircuit 346, as shown.

[0242] The function of power conversion circuit 328 is to up-convert thebattery voltage to +5 V supply, 349, whereas the function of powerswitching circuitry 330 is to disable the receiver by removing itspower, during the downloading of data to a host device. When batterydetect circuit 327 detects low battery power levels, it sends the baseunit system controller a low-battery-level detect signal to initiate analarm to the user.

[0243] The function of the host detect circuit 329 is to determinewhether the data-output communication port of the base unit isphysically (and electrically) connected to data-input communication portof host computer system. Thus, when host device detect circuit 329detects a host device plugged into data-output communication port 323,it will provide a host device detect signal A. sub.DL to the systemcontroller which automatically activates the system controller to begininitializing for “downloading” of collected bar code symbol characterdata, from the data collection device into the host device. To permitthe host device to supply power to the data collection device duringdata downloading operations, and thus conserve battery power, a powersupply line 350 is provided between a pin of data-output communicationconnector 224 and the positive side of battery supply 326. To restrictpower flow from the data collection device to the host device, a diode351 is inserted in series along this power supply line 350, as shown.

[0244] Symbol character data recovered by symbol character dataextraction module 343, is stored within RAM 332. To facilitate transferof such data from module 342 to RAM storage unit 332, a data bus 352 isprovided, as shown. Also associated with data bus 352 is EEPROM 331. Thebase unit system controller will typically store particular data items,such as set-up parameters and the like, in non-volatile RAM 331 as suchdata can be retained therein for the lifetime of the data collectionbase unit.

[0245] RAM storage unit 332 is protected by power-fail/RAM-protectcircuit 333 which, as shown in FIG. 19, is operably associated withstorage capacitor 334 and the write line of RAM storage unit 353. RAMstorage unit 332 is protected in two ways. Firstly, during powertransitions, circuit 333 inhibits write signals to RAM storage unit 332,and consequently stored symbol character data is protected fromcorruption. Secondly, during periods of battery power failure, circuit333 enables storage capacitor 334 to provide power to RAM storage unit332 for minimally one hour in order to maintain the integrity of storedsymbol character data.

[0246] Having described the structure and function of data collectionbase unit 37, its versatile operation will now be described withreference to the system control program illustrated in FIGS. 20A to 20D.

[0247] As indicated in FIG. 20A, upon enabling the POWER-ON switch, the(base unit) system controller advances to Block A. At Block A, thesystem controller checks to determine whether the output of host detectcircuit 329 indicates that a host device is plugged into data-outputcommunication port 324. If it detect this condition, then at Block B thesystem controller enables power switching circuit 330 and uses the sameto disconnect the power supply from the RF signal receiving circuit.Then at Block C, the system controller checks to determine whether thereis any data stored in RAM storage unit 332 for downloading to theconnected host device. If there is no data stored in RAM storage unit332, then the system controller proceeds to Block D, and writes “MEMORYEMPTY” to character display 322. Thereafter, the system controllerremains at Block E until it receives host detect signal A.sub.DL=0indicative that the host device is no longer plugged into data-outputcommunications port 324. Upon the occurrence of this event, the systemcontroller returns to Block A, as shown.

[0248] If, at Block C, the system controller determines that there isdata stored in RAM storage unit 332 for downloading into the hostdevice, then at Block F the system controller writes “TO COM HIT ENTER”to character display 322. At Block G, the system controller polls thekeypad for the occurrence of a key press operation, and at Block Hdetermines whether the ENTER key has been pressed. If any key other thanthe ENTER is pressed, then the system controller returns to controlBlock A. If the ENTER key is pressed, the system controller proceeds toBlock I and writes the message “TRANSMITTING” to character display 322.Then at Blocks J through M, data in RAM storage unit 332 is downloadedto the host device connected to data-output communication port 324.

[0249] Specifically, at Block J in FIG. 20B, the base unit systemcontroller enables data format conversion module 344 by generatingenable signal E.sub.DFC=1. In response to this enable signal, the dataformat conversion module converts the data format of the recoveredsymbol character data and then buffers the format-converted symbolcharacter data bytes in data buffer 332. Then at Block K the base unitsystem controller enables the serial data transmission circuit 345 bygenerating enable signal E.sub.DT=1. In response to this enable signal,the serial data transmission circuit transmits the format-convertedsymbol character data bytes over communication cable 7 using serial datatransmission techniques well known in the art, as discussed above. AtBlock L, the system checks to determine if all data in RAM storage unit332 has been transmitted, and if so, writes the message “MEMORY EMPTY”or “DOWNLOAD COMPLETE” to character display 322, as indicated at Block Din FIG. 20C. Thereafter, the system controller remains at Block E untilthe host device is disconnected from data-output communication port 324,and thereupon returns to Block A.

[0250] However, if it is determined at Block L in FIG. 20D that datatransfer from RAM storage unit 332 is not complete, then as indicated atBlock M the system controller checks to determine whether the hostdevice is still connected to data-output communication port 324 (i.e.,A.sub.DL=1). If host device has been disconnected (i.e., A.sub.DL=0),then the system controller returns to Block A, as shown. If, on theother hand, the host device remains connected to data-outputcommunications port 324, the system controller returns to Block J toform a control loop within which the system controller will remain solong as there remains data in RAM storage unit 332 and the host deviceremains connected to data-output communication port 324.

[0251] As indicated at Block A in FIG. 20A, if the system controllerdoes not receive host detect signal A.sub.DL=1 from host detect circuit329, indicative that a host device is not plugged into the data-outputcommunication port, then the system controller proceeds to Block N. AtBlock N, the system controller first checks the output of low batterycircuit 327 to determine that sufficient power is available. Ifinsufficient battery strength is indicated, then at Block O the systemcontroller disconnects battery power supply 326 from data-outputcommunication port 324 by way of power switching circuit 320. Thereafterat Block P in FIG. 20A, the system controller writes “LOW BATTERIES” tocharacter display 322. The system controller remains at Block Q until itreceives host detect signal A.sub.DL=1, indicative that the host deviceis plugged into data-output communication port 324. If so, the systemcontroller advances to Block C, as hereinbefore described. Notably, thischoice of control flow is based on the fact that, during datadownloading operations, power is supplied to the data collection baseunit by the host device, and the battery level of the data collectiondevice is of no consequence during such operations.

[0252] If a LOW battery level is not detected at Block N, then thesystem controller proceeds to Block R and polls both the receivercircuit and the keypad for entry of data. If the system controllerdetermines that no data is being presented for collection, then thesystem controller returns to Block A, as shown. However, if one of thesecomponents has data fox collection, then at Block S in FIG. 20B thesystem controller determines which one has data for entry. If the keypadhas data for entry and collection, then the system controller proceedsto Block T in FIG. 20C.

[0253] At Block T, the system controller uploads such data by firstwriting the data to character display 323, and then at Block U storingthe data in RAM storage unit 332. Then, at Block V, the systemcontroller determines whether RAM storage unit 332 is filled tocapacity. If it is, then at Block W the system controller writes “MEMORYFULL” to character display 332. Thereafter, the system controllerremains at Block X until it receives host detect signal A.sub.DL=1,indicative that a host device is connected to data-output communicationsport 324 for downloading collected data thereto. When a host device isdetected at the data-output communications port 324, the systemcontroller proceeds to Block C for participating in downloading of acollection data, in a manner described above. If, at Block V, the systemcontroller determines that RAM storage unit 332 is not full, then thesystem controller returns to Block A, as shown.

[0254] If at Block S the RF receiver circuit has data for entry, thenthe system controller proceeds to Block Y in FIG. 20D. At this Block,the system controller enables data packet storage buffer 338 and datapacket frame check module 340 by producing activation control signalsE.sub.SB=1 and E.sub.PFC=1, respectively. At Block Z, the base unitsystem controller determines whether it has received an acknowledgement(i.e., control activation signal A.sub.PFC-1) from the data packet framecheck module, indicating that the received data packet is properlyframed. If the received data packet is not properly framed, then thebase unit returns to Block R in order to redetect the incoming carriersignal. However, if the received data packet is properly framed, then atBlock AA the base unit system controller enables the transmitter numberidentification module by generating enable signal E.sub.TID=1.

[0255] At Block BB in FIG. 20D, the base unit system controllerdetermines whether it has received an acknowledgment (i.e., controlactivation signal A.sub.TID=1) from the transmitter numberidentification module 341 that the received data packet contains thecorrect transmitter identification number (i.e., the same numberassigned to the base unit). If the Transmitter Identification Numbercontained within the received data packet does not match the Base UnitIdentification Number preassigned to the base unit, then the base unitsystem controller returns to Block R whereupon it resumes carrier signaldetection. If, however, the Transmitter Identification Number containedin the received data packet matches the Base Unit Identification Numberstored in EPROM 331, then at Block CC the base unit system controllerenables the data packet group number identification module 342 bygenerating enable signal E.sub.DPID=1.

[0256] At Block DD in FIG. 20D, the base unit system controllerdetermines whether it has received an acknowledgment (i.e., controlactivation signal A.sub.DPID=1) from the data packet groupidentification module 342 indicating that the received data packet isnot a redundant data packet (i.e., from the same transmitted data packetgroup). This is achieved by analyzing the Packet Group Number of theprevious and currently received data packets. If the received datapacket is a redundant data packet, then the base unit system controllerreturns to Block R, whereupon carrier signal detection is resumed. If,however, the received data packet is determined not redundant at BlockDD, then at Block EE the base unit system controller enables the symbolcharacter data extraction module 343 by generating enable signalE.sub.DE=1. In response to the generation of this enable signal, symboldata extraction module 343 reads the bytes of symbol character datacontained in the received data packet, checks the data for statisticalreliability, and the writes the extracted symbol character data bytesinto storage buffer 338.

[0257] At Block FF in FIG. 20D, the base unit system controller enablesat Block FF the acoustical acknowledgement signal generation circuit 346by producing enable signal E.sub.AA=1. In response to the production ofthis enable signal, acoustical acknowledgment signal generation circuit346 generates a high intensity acoustical signal having characteristicsof the type described above, thereby informing the user that atransmitted data packet has been received and that the symbol characterdata packaged therein has been successfully recovered and transmitted tothe host computer system. Thereafter, the base unit system controllerproceeds to Block T in FIG. 20C, as shown.

[0258] In the event that the operator desires to clear RAM storage unit332 of collected data, the operator must enter a preset code word oralphanumeric code by way of keypad 321. This feature prevents accidentalerasure of collected data. Also, the data collection device of thepresent invention automatically down-loads the stored data to the hostcomputer system upon detection of the data-receive port. Rather thanprogramming the data collection device for such data “downloading”transfers, data downloading routines are programmed into the hostcomputer system. Preferably, these downloading routines are designed toaccept downloaded symbols and create an ASCII file.

[0259] The third illustrative embodiment of the base unit shown in FIGS.5A to 5D will now be described in greater detail with reference to FIGS.21 to 23.

[0260] As shown in FIG. 21, base unit 360 is realized as a PCMCIA card361, including a PC board 362, which as a single device inserts into thePCMCIA (TYPE II or III) port 363 of a portable or desk-top computersystem 364. In general, the system architecture of base unit 360 issimilar to base unit 3 of the first illustrative embodiment describedabove. As shown in FIG. 22, base unit 360 comprises a number hardwareand software components, namely: a power supply circuit 373; a receivingantenna element 374; an RF carrier signal receiver circuit 375; a datapacket storage buffer 377; a base unit system controller 378; a datapacket frame check module 379; a transmitter number identificationmodule 380; a data packet number identification module 381; a symbolcharacter data extraction module 382; a serial-data-to-PCMCIA-busconversion module 383; a PCMCIA bus interface circuit 384; and anacoustical acknowledgement signal generation circuit 385. In theillustrative embodiment, a programmed microprocessor and associatedmemory (i.e., ROM and RAM) mounted on PC board 362, indicated byreference numeral 386, are used to realize base unit system controller378 and each of the above-described data processing modules 377 to 383in a similar manner hereinbefore described. The details of such aprogramming implementation are known by those with ordinary skill in theart to which the present invention pertains.

[0261] As shown in FIG. 22, the output of the symbol character dataextraction module 382 is provided to the input of theserial-data-to-PCMCIA-bus-conversion module 383. The function of thisconversion module is to convert the format of the recovered symbolcharacter data so that it may be placed on the PCMCIA bus of hostcomputer 364, via PCMCIA bus interface circuit 384. The function ofPCMCIA bus interface circuit 384 is to realize the interface between thePCMCIA bus aboard host computer 364 and the circuitry on PC board 362which realizes the structures and functions of the base unit.Electro-acoustical transducer 388, which forms part of the acousticalacknowledgment signal generation circuit 385, and RF receiving antenna374, are both mounted on a selected portion of PC board 362 that extendsfrom the PCMCIA port 363, as shown. In this way, the receiving antennaelement is free to detect RF carrier signals, while theelectro-acoustical transducer is free to transmit acousticalacknowledgment signals to the ambient environment for the user to hear.In all other respects, the base unit 360 is structurally andfunctionally similar to base unit 3 described above.

[0262] The overall operation of the base unit of the third illustrativeembodiment will be described below with reference to the control processshown in FIG. 23.

[0263] As illustrated at Block A in FIG. 23, radio receiving circuit 375is the only system component that is normally active at this stage ofthe base unit system control process; all other system components areinactive (i.e., disabled) including base unit system controller 378;data packet storage buffer 377, data packet frame check module 379,transmitter number identification module 380, data packet numberIdentification module 381, symbol character data extraction module 382,serial-data-to-PCMCIA-bus-conversion module 383, PCMCIA bus interfacecircuit 384, and acoustical acknowledgement signal generation circuit385. With the radio receiving circuit activated, base unit 360 iscapable of receiving any modulated carrier signal transmitted from anyof the bar code symbol reading devices within the data transmissionrange of the base unit.

[0264] At Block B in FIG. 23, radio receiving circuit 375 determineswhether it has received a transmitted carrier signal on its receivingantenna element 374. If it has, then the radio receiving circuitgenerates a system controller activation signal A.sub.7, which activatesbase unit system controller 378 shown in FIG. 21. Then at Block C, thebase unit system controller activates (i.e., enables) data packetstorage buffer 377 and data packet frame check module 379 by producingactivation control signals E.sub.SB=1 and E.sub.PFC=1, respectively. AtBlock D, the base unit system controller determines whether it hasreceived an acknowledgement (i.e., control activation signalA.sub.PFC=1) from the data packet frame check module, indicating thatthe received data packet is properly framed. If the received data packetis not properly framed, then the base unit returns to Block A in orderto redetect an incoming carrier signal. However, if the received datapacket is properly framed, then at Block E the base unit systemcontroller enables the transmitter number identification module bygenerating enable signal E.sub.TID=1.

[0265] At Block F in FIG. 23, the base unit system controller determineswhether it has received an acknowledgment (i.e., control activationsignal A.sub.TID=1) from the transmitter number identification modulethat the received data packet contains the correct transmitteridentification number (i.e., the same number assigned to the base unitand stored in storage unit 376). If the Transmitter IdentificationNumber contained within the received data packet does not match the BaseUnit Identification Number stored in storage unit 376, then the baseunit system controller returns to Block A whereupon it resumes carriersignal detection. If, however, the Transmitter Identification Numbercontained in the received data packet matches the Base UnitIdentification Number, then at Block G the base unit system controllerenables the data packet number identification module 389 by generatingenable signal E.sub.DPID=1.

[0266] At Block H in FIG. 23, the base unit system controller determineswhether it has received an acknowledgment (i.e., control activationsignal A.sub.DPID=1) from the data packet identification moduleindicating that the received data packet is not a redundant data packet(i.e., from the same transmitted data packet group). If the receiveddata packet is a redundant data packet, then the base unit systemcontroller returns to Block A, whereupon carrier signal detection isresumed. If, however, the received data packet is not redundant, then atBlock I the base unit system controller enables the symbol characterdata extraction module by generating enable signal E.sub.DE=1. Inresponse to the generation of this enable signal, the symbol dataextraction module reads at Block J the symbol character data containedin the received data packet, checks the data for statisticalreliability, and the writes the extracted symbol character data bytesinto a storage buffer (not explicitly shown). Thereafter, as indicatedat Block K, the base unit system controller enablesserial-data-to-PCMCIA-bus conversion module 383 by generating enablesignal E.sub.DFC=1. In response to this enable signal, theserial-data-to-PCMCIA-bus conversion module 383 converts the data formatof the recovered symbol character data and then transfers theformat-converted data to the PCMCIA bus of the host computer 364 by wayof bus interface circuitry 384. When the serial data transmissionprocess is successfully completed, the base unit system controllerenables at Block L the acoustical acknowledgement signal generationcircuit 385 by producing enable signal E.sub.AA=1. In response to theproduction of this enable signal, acoustical acknowledgment signalgeneration circuit 235 generates a high intensity acoustical signalhaving characteristics of the type described above, thereby informingthe user that a transmitted data packet has been received and that thesymbol character data packaged therein has been successfully recoveredand transmitted to the host computer system. Thereafter, the base unitsystem controller returns to the Block A, as shown.

[0267] The fourth illustrative embodiment of the base unit of FIGS. 6Ato 6D will now be described in greater detail with reference to FIGS.24A to 26.

[0268] As shown in FIG. 24C, a base unit 61 is operably connected to abar code symbol printing engine 62. As shown, base unit 61 is interfacedwith host computer system (e.g., desk-top computer 64 by way of serialdata communications cable 65. Power cable 65 is connected to a connectorjack on PC board 68 and supplies electrical power to primary transformer67 by way of a conventional current chopper circuit 412 realized on PCboard 68, and wires 69 extending therebetween. As shown, PC board 68 ismounted on a base plate 400 having a pair of spaced apart projections401A and 401B disposed within the plane of the base plate. Base unithousing 73 is adapted to snap-fit onto base plate 400. A circularaperture 404 is provided in the top panel of housing 73 to permit theenergy of acoustical acknowledgment signals emanate from theelectroacoustical transducer mounted on PC board 68.

[0269] As shown in FIGS. 24A and 24B, bar code symbol printing engine 62comprises a base plate 405 on which a conventional bar code printingengine 406 is mounted, and a printing engine housing 407 that enclosesthe engine and connects to base plate 405 in a snap-fit manner.

[0270] Housing 407 has an aperture 408 in its top panel to permit thesubstrate 409 on which bar code labels 410 are printed. Base plate 405has a pair of spaced apart slots 411A and 411B, which are adaptable toreceive and engage projections 401A and 401B, respectively.

[0271] As shown in FIG. 25, base unit 61 comprises a number hardware andsoftware components, namely: a power supply circuit 273; a receivingantenna element 415; an RF carrier signal receiver circuit 416; a datapacket storage buffer 418; a base unit system controller 419; a datapacket frame check module 420; a transmitter number identificationmodule 421; a data packet number identification module 422; a symbolcharacter data extraction module 423; a data format conversion module424; an acoustical acknowledgement signal generation circuit 425; serialdata transceiver circuit 426; and input/output (I/O) register 428. Inthe illustrative embodiment, a programmed microprocessor and associatedmemory (i.e., ROM and RAM) mounted on PC board 68, indicated byreference numeral 430, are used to realize base unit system controller419 and each of the above-described data processing modules 420 to 424.The details of such a programming implementation are known by those withordinary skill in the art to which the present invention pertains.

[0272] As shown in FIG. 25, the output of the symbol character dataextraction module is provided to data format conversion module 424. Theoutput of data format conversion module 424 is connected to serial datatransceiver circuit 426. In turn, serial data transceiver circuit 426 isconnected to the serial data input port of host computer 64, as shown.Notably, serial data transceiver circuit 426 is enabled by an enablesignal E.sub.DST=1 produced by the base unit system controller. In allother respects, the architecture of base unit 61 is substantiallysimilar to the base unit of the first illustrative embodiment.

[0273] The overall operation of base unit 61 will be described, belowwith reference to the control process shown in FIG. 26.

[0274] Prior to entering Block A in FIG. 26, only serial datatransceiver circuit 426, base unit system controller 419 and radioreceiver circuit 416 are activated, while all other system componentsare disabled. As illustrated at Block A in FIG. 26, the base unit systemcontroller 419 determines whether activation control signal A.sub.SD=1has been received. If this control activation signal is received, thenat Block B, the base unit system controller enables the I/O register 428to direct the received serial data to the printing engine 406.Thereafter, the base unit system controller returns to Block A in FIG.26.

[0275] If at Block A, the base unit system controller does not receivecontrol activation signal A.sub.SD 32 1, but rather A.sub.SD=0, then thebase unit system controller proceeds to Block C in FIG. 26. At thiscontrol block, radio receiving circuit 416, system controller 419, andserial data transceiver 426 are the only active system components; allother system components are inactive (i.e., disabled) including baseunit system controller 419, data packet storage buffer 418, data packetframe check module 420, transmitter number identification module 421,data packet number identification module 422, symbol character dataextraction module 423, data format conversion module 424, acousticalacknowledgement signal generation circuit 425, and serial datatransceiver circuit 426. With the radio receiving circuit 416 activated,base unit 61 is capable of receiving any modulated carrier signaltransmitted from any of the bar code symbol reading devices within thedata transmission range of the base unit.

[0276] At Block D in FIG. 26, radio receiving circuit 416 determineswhether it has received a transmitted carrier signal on its receivingantenna element 415. If it has, then the radio receiving circuitgenerates a system controller activation signal A.sub.7 which activatesbase unit system controller 419 shown in FIG. 25. Then at Block E, thebase unit system controller activates (i.e., enables) data packetstorage buffer 418 and data packet frame check module 420 by producingactivation control signals E.sub.SB=1 and E.sub.PFC=1, respectively. AtBlock D, the base unit system controller determines whether it hasreceived an acknowledgement (i.e., control activation signalA.sub.PFC=1) from the data packet frame check module, indicating thatthe received data packet is properly framed. If the received data packetis not properly framed, then the base unit returns to Block A in orderto redetect an incoming carrier signal. However, if the received datapacket is properly framed, then at Block G the base unit systemcontroller enables the transmitter number identification module bygenerating enable signal E.sub.TID=1.

[0277] At Block H, the base unit system controller determines whether ithas received an acknowledgment (i.e., control activation signalA.sub.TID=1) from the transmitter number identification module that thereceived data packet contains the correct transmitter identificationnumber (i.e., the same number assigned to the base unit and stored instorage unit 417). If the Transmitter Identification Number containedwithin the received data packet does not match the Base UnitIdentification Number stored in storage unit 417, then the base unitsystem controller returns to Block A, whereupon it resumes carriersignal detection. If, however, the Transmitter Identification Numbercontained in the received data packet matches the Base UnitIdentification Number, then at Block I the base unit system controllerenables the data packet number identification module 422 by generatingenable signal E.sub.DPID=1.

[0278] At Block J in FIG. 26, the base unit system controller determineswhether it has received an acknowledgment (i.e., control activationsignal A.sub.DPID=1) from the data packet identification moduleindicating that the received data packet is not a redundant data packet(i.e., from the same transmitted at a packet group). If the receiveddata packet is a redundant data packet, then the base unit systemcontroller returns to Block A, whereupon carrier signal detection isresumed. If, however, the received data packet is not redundant, then atBlock K the base unit system controller enables symbol character dataextraction module 423 by generating enable signal E.sub.DE=1. At BlockL, the symbol data extraction module reads the symbol character datacontained in the received data packet, checks the data for statisticalreliability, and the writes the extracted symbol character data bytesinto a storage buffer (not explicitly shown). Then as indicated at BlockM, the base unit system controller enables the data format conversionmodule 424 by generating enable signal E.sub.DFC=1. In response to thisenable signal, data format conversion module 424 converts the dataformat of the retrieved symbol character data and then buffers theformat-converted symbol character data bytes.

[0279] When the data format conversion process is successfullycompleted, the base unit system controller proceeds to Block N andenables the serial data transceiver circuit 426 by generating enablesignal E.sub.DSW=1. At this stage of the control process, theformat-converted data is transmitted from serial data transceivercircuit 426, to the serial data input port of host computer system 64using serial data transmission techniques well known in the art. Whenthe serial data transmission process is successfully completed, the baseunit system controller enables at Block o the acoustical acknowledgementsignal generation circuit 425 by producing enable signal E.sub.AA=1. Inresponse to the production of this enable signal, acousticalacknowledgment signal generation circuit 425 generates a high intensityacoustical signal, as described above, in order to inform the user thata transmitted data packet has been received and that the symbolcharacter data packaged therein has been successfully recovered andtransmitted to the host computer. Thereafter, the base unit systemcontroller returns to the Block A, as shown.

[0280] The fifth illustrative embodiment of the base unit of the presentinvention will now be described in greater detail with reference toFIGS. 27 to 30.

[0281] As shown in FIG. 27, base unit 61′ is similar in many respects tothe fourth illustrative embodiment of the base unit, shown in FIGS. 6Ato 6D and FIG. 24C. As shown, base unit 61′ is interfaced with hostcomputer system (e.g., desk-top computer) 64 having a CPU 64A, videodisplay monitor 64B and a keyboard 64C. CPU 64A is interfaced with baseunit 61′ by way of serial data communication cable 65, and keyboard 64Cis interfaced with base unit 61 by way of serial data communicationcable 440. Power cable 66 is connected to a connector jack on PC board68′ inside base unit 61′ and supplies electrical power to primarytransformer 67 by way of wires 69 and a conventional current choppercircuit 412 on PC board 68′. As shown, PC board 68′ is mounted on baseplate 400, whereas keyboard cable input jack 440 is mounted on baseplate 400, for receiving the connector cable of a conventional keyboard.Base unit housing 73′ is adapted to snap-fit onto base plate 400. Asshown, base unit housing 73 has a keyboard jack aperture 441 to permit akeyboard connector insert into keyboard cable input jack 440. Circularaperture 404 is provided in the top panel of housing 73′ to permit theenergy of acoustical acknowledgment signals emanate from theelectroacoustical transducer 445 mounted on PC board 68′.

[0282] As shown in FIG. 29, base unit 61′ comprises substantially thesame hardware and software components employed in the fourthillustrative embodiment of the base unit shown in FIG. 25, namely: powersupply circuit 273; receiving antenna element 415; RF carrier signalreceiver circuit 416; base unit identification number storage unit 417;data packet storage buffer 418; base unit system controller 419; datapacket frame check module 420; transmitter number identification module421; data packet number identification module 422; symbol character dataextraction module 423; an ASCII-Data-to-Keyboard-Scancode conversionmodule 442; acoustical acknowledgment signal generation circuit 425; anddata switching circuit 443. In the illustrative embodiment, a programmedmicroprocessor and associated memory (i.e., ROM and RAM) mounted on PCboard 68′, indicated by referenced numeral 430, are used to realize baseunit system controller 419 and each of the above-described dataprocessing modules 418 to 424 and 442. The details of such a programmingimplementation are known by those with ordinary skill in the art towhich the present invention pertains.

[0283] As shown in FIG. 29, the output of the symbol character dataextraction module is provided to ASCII-Data-to-Keyboard-Scancodeconversion module 442. Also, the serial data output port ofASCII-Data-to-Keyboard-Scancode conversion module 442 is connected toone data input port of data switching circuit 443, whereas the serialdata output port of keyboard 64C is connected to the other data inputport of the data switching circuit 443. In turn, the serial data outputport of the data switching circuit 443 is connected to the serial datainput port of host computer 64, as shown. Notably, the operation of dataswitching circuit 443 is normally activated (i.e., enabled) independentof base unit system controller 119 so that serial data output from thekeyboard is routed through the data switching circuit to the hostcomputer keyboard port. In all other respects, the architecture of baseunit 61 ′ is substantially similar to the base unit of the fourthillustrative embodiment.

[0284] The overall operation of base unit 61′ will be described belowwith reference to the control process shown in FIG. 30.

[0285] At control Block A in FIG. 30, radio receiving circuit 415 is theonly active system component; all other system components are inactive(i.e., disabled) including base unit system controller 419, data packetstorage buffer 418, data packet frame check module 420, transmitternumber identification module 421, data packet number identificationmodule 422, symbol character data extraction module 423,ASCII-Data-to-Keyboard-Scancode format conversion module 424, andacoustical acknowledgment signal generation circuit 425. With the radioreceiving circuit 416 activated, base unit 61′ is capable of receivingany modulated carrier signal transmitted from any of the bar code symbolreading devices within the data transmission range of the base unit.

[0286] At Block B in FIG. 30, radio receiving circuit 415 determineswhether it has received a transmitted carrier signal on its receivingantenna element 415. If it has, then the radio receiving circuitgenerates a system controller activation signal A.sub.7, which activatesbase unit system controller 419. Then at Block C, the base unit systemcontroller activates (i.e, enables) data packet storage buffer 418 anddata packet frame check module 420 by producing activation controlsignals E.sub.SB=1 and E.sub.PFC=1, respectively. At Block D, the baseunit system controller determines whether it has received anacknowledgment (i.e., control activation signal A.sub.PFC=1) from thedata packet frame check module, indicating that the received data packetis properly framed. If the received data packet is not properly framed,then the base unit returns to Block A in order to redetect an incomingcarrier signal. However, if the received data packet is properly framed,then at Block E the base unit system controller enables the transmitternumber identification module by generating enable signal E.sub.TID=1.

[0287] At Block F, the base unit system controller determines whether ithas received an acknowledgment (i.e., control activation signalA.sub.TID=1) from the transmitter number identification module that thereceived data packet contains the correct transmitter identificationnumber (i.e., the same number assigned to the base unit and stored instorage unit 417). If the Transmitter Identification Number containedwithin the received data packet does not match the Base UnitIdentification Number stored in storage unit 417, then the base unitsystem controller returns to Block A, whereupon it resumes carriersignal detection. If, however, the Transmitter Identification Numbercontained in the received data packet matches the preassigned Base UnitIdentification Number, then at Block G the base unit system controllerenables the data packet number identification module 422 by generatingenable signal E.sub.DPID=1.

[0288] At Block H in FIG. 26, the base unit system controller determineswhether it has received an acknowledgment (i.e., control activationsignal A.sub.DPID=1 from the data packet identification moduleindicating that the received data packet is not a redundant data packet(i.e., from the same transmitted data packet group). If the receiveddata packet is a redundant data packet, then the base unit systemcontroller returns to Block A, whereupon carrier signal detection isresumed. If, however, the received data packet is not redundant, then atBlock I the base unit system controller enables symbol character dataextraction module 423 by generating enable signal E.sub.DE=1. At BlockJ, the symbol data extraction module reads the symbol character datacontained in the received data packet, checks the data for statisticalreliability, and then writes the extracted symbol character data bytesinto a storage buffer (not explicitly shown). Then as indicated at BlockK, the base unit system controller enables theASII-data-to-Keyboard-Data format conversion module 442 by generatingenable signal E.sub.DFC=1. In response to this enable signal, dataformat conversion module 442 converts the data format of the retrievedsymbol character data and then buffers the format-converted symbolcharacter data bytes.

[0289] When the data format conversion process is successfullycompleted, the base unit system controller proceeds to Block L andenables data switching circuit 443 to output the converted scan codes tothe host keyboard port, by generating enable signal E.sub.DSW=1. At thisstage of the control process, the format-converted data is transmittedthrough data switching circuit 443 to the serial data keyboard inputport of host computer system 64, using serial data transmissiontechniques well known in the art. When the serial data transmissionprocess is successfully completed, the base unit system controllerenables, at Block M, the acoustical acknowledgement signal generationcircuit 425 by producing enable signal E.sub.AA=1. In response to theproduction of this enable signal, acoustical acknowledgment signalgeneration circuit 425 generates a high intensity acoustical signal, asdescribed above, in order to inform the user that a transmitted datapacket has been received and that the symbol character data packagedtherein has been successfully recovered and transmitted to the hostcomputer. Thereafter, the base unit system controller returns to theBlock A, as shown.

[0290] It is appropriate at this juncture to illustrate the automatichands-on and hands-free modes of operation of the system while utilizedin different mounting installations. For purposes of illustration only,the system of the first illustrative embodiment shown in FIGS. 1 to 3Awill be used to illustrate such mounting illustrations.

[0291] A point-of-sale station is shown in FIGS. 31A to 31D, ascomprising an electronic cash register 6 operably connected to theautomatic bar code reading system of the first illustrative embodimentby way of flexible communication cable 7. Low voltage DC power isprovided to base unit 3 by way of flexible power supply cable 8. In thisparticular mounting installation, base unit 3 is supported on ahorizontal countertop surface. If necessary or desired in such mountinginstallations, the base plate of base unit 3 may be weighted by affixingone or more dense mass elements to the upper surface of the base plate.

[0292] With automatic bar code reading device 2 supported within scannersupport stand portion of the base unit, as shown in FIG. 31A, the systemis automatically induced into its automatic long-range hands-free modeof operation. However, owing to the positioning of both object detectionand scan fields in this mounting installation, only bar code symbolslocated on small, very low profile objects can be easily read. In orderto induce the system into its short-range hands-on mode of operation,the user simply encircles the handle portion of the hand-supportabledevice with his or her fingers, and then lifts the device out of thescanner support stand, as shown in FIGS. 31B. Upon lifting the deviceout of its stand, the range selection circuit 115 (e.g., including aHalt-effect magnetic flux sensor (mounted in the handle of the housing)detects the absence of magnetic flux produced from a permanent magnetmounted in the support stand, and automatically generates theshort-range control activation signal (i.e., R.sub.1=0). The details ofthis range mode-selection mechanism can be found in copendingapplication Ser. No. 07/761,123, supra.

[0293] With the automatic bar code reading device held in the user'shand, and a bar coded object 435 in the other hand, the object is movedinto the short-range portion of the object detection field as shown inFIG. 31C, where the object is automatically detected, and bar codesymbol 436 automatically scanned while the visible laser beam isrepeatedly scanned across the scan field. After the bar code symbol hasbeen successfully read (i.e., detected and decoded) and a transmitteddata packet containing symbol character data has been received andprocessed at base unit 3 in a manner described hereinabove, a highlyaudible acoustical acknowledgement signal sack of a predetermined pitchis produced from the base unit. Thereafter, the bar code reading deviceis placed back within the scanner support stand, as shown in FIG. 31D,where it is once again induced into its long-range hands-free mode ofoperation.

[0294] In FIGS. 32 to 33B, a point-of-sale station is shown comprisingthe automatic bar code reading system of the present invention operablyconnected to electronic cash register 6 by way of flexible communicationand power supply cables 7 and 8. In this particular mountinginstallation, base unit 3 and its associated scanner support stand arepivotally supported above a horizontal counter surface by way of apivotal joint assembly 265 connected to pedestal base 266 mounted underthe electronic cash register, as shown. When installed in the mannerillustrated, scanner support stand 3 can be adjustably positioned andlocked into virtually any orientation in three-dimensional space, owingto the three principle degrees of freedom provided by the pivotal jointassembly.

[0295] With automatic bar code reading device positioned within scannerstand portion of base unit 3 as shown in FIG. 32, the system isautomatically induced into its long-range hands-free mode of operationby way of the magnetic flux sensing technique disclosed in copendingapplication Ser. No. 07/761,123. By simply moving object 435 into theobject detection field, the bar code symbol 436 is repeatedly scanned bythe visible laser beam scanned across the scan field. To induce theautomatic bar code reading system into its short-range hands-on mode ofoperation, the user simply grasps the automatic bar code reading deviceand lifts it out of the scanner support stand, as illustrated in FIG.33A. Then, by placing object 435 into the short-range portion of theobject detection field as shown in FIG. 33B, the object is automaticallydetected and bar code symbol 436 scanned by the visible laser beamrepeatedly scanned across the scan field. After the bar code symbol hasbeen successfully read and an audible acoustical acknowledgment signalproduced as herebefore described, the automatic bar code reading devicecan be placed back into the scanner support stand, automaticallyinducing the system into its long-range hands-free mode of operation.

[0296] Having described the preferred embodiments of the presentinvention, several modifications come to mind.

[0297] For example, in alternative embodiments of the present invention,the automatic portable bar code symbol reading device may notincorporate within its housing, electronic circuitry for carrying outcontrol, decoding and other data processing functions. Instead suchelectronic circuitry may be contained within a remote unit operablyassociated with the hand-supportable device by way of the flexiblescanner cable. In such embodiments, the hand-supportable device willfunction as an automatic hand-supportable laser scanner, rather than abar code symbol reader.

[0298] The automatic bar code reading system of the present invention iscapable of performing a wide variety of complex decision-makingoperations in real-time, endowing the system with a level ofintelligence hitherto unattained in the bar code symbol reading art.Within the spirit of the present invention, additional decision-makingoperations may be provided to further enhance the capabilities of thesystem.

[0299] While the particular illustrative embodiments shown and describedabove will be useful in many applications in code symbol reading,further modifications to the present invention herein disclosed willoccur to persons with ordinary skill in the art. All such modificationsare deemed to be within the scope and spirit of the present inventiondefined by the appended claims to invention.

We claim:
 1. A system for reading code symbols comprising: (A) a codesymbol reading device including (1) a housing supportable upon and/or inthe hand of a user of said code symbol reading device, and having alight transmission aperture through which optical energy can exit fromand enter into said housing, (2) a light producing mechanism, disposedin said housing, for producing optical energy, (3) a light projectingmechanism, disposed in said first housing, for projecting said opticalenergy into a scan field defined external to said first housing and ontoa code symbol on an object located in at least a portion of said scanfield, (4) a light detecting mechanism, disposed in said first housing,for detecting optical energy reflected off said code symbol and passingthrough said light transmission aperture as said optical energy isprojected onto said code symbol present in said scan field, and forautomatically producing scan data indicative of said detected opticalenergy, (5) a scan data processing mechanism for processing producedscan data in order to detect and decode said code symbol when said codeis present in said scan field and automatically producing symbolcharacter data in a form representative of said decoded symbol, (6) acontrol mechanism for automatically controlling the operation of atleast two of said light producing mechanism, said light projectingmechanism, and said scan data processing mechanism, (7) a data packetconstruction mechanism for constructing a data packet using said symbolcharacter data produced from said scan data processing mechanism; (8) acarrier signal generation mechanism for generating an electromagneticcarrier signal; (9) a carrier signal modulation mechanism for modulatingsaid carrier signal using said data packet; and (10) a carrier signaltransmitting mechanism for transmitting said modulated carrier signalacross a data transmission range; and (B) a base unit positionablewithin the data transmission range of said carrier signal transmittingmechanism and including: (1) a carrier signal receiving mechanism forreceiving said modulated carrier signal transmitted from said carriersignal transmitting mechanism, (2) a carrier signal demodulationmechanism for demodulating said modulated carrier signal so as torecover said data packet, (3) a data packet processing mechanism forprocessing said recovered data packet to recover said symbol characterdata therefrom, and (4) an acknowledgment signal producing mechanism forautomatically producing, in response to the recovery and storage of saidsymbol character data, an acknowledgment signal perceptible to the userof said code symbol reading device when said user is situated withinsaid data transmission range, so as to inform said user that said symbolcharacter data produced by said scan data processing mechanism has beenreceived and recovered at said base unit.
 2. A system for reading barcode symbols comprising: (A) an automatic bar code symbol deviceincluding (1) a housing having a light transmission aperture throughwhich optical energy can exit from and enter into said housing, saidhousing supportable upon and/or in the hand of a user of said automaticbar code symbol reading device, (2) a laser beam generator, disposed insaid housing, for producing a laser beam, (3) a laser beam scanningmechanism, disposed in said housing, for repeatedly scanning said laserbeam across a scan field defined external to said housing and across abar code symbol on an object located in at least a portion of said scanfield, (4) a light detector, disposed in said housing, for detectinglaser light reflected off said bar code symbol and passing through saidlight transmission aperture as said laser beam is repeatedly scannedacross said bar code symbol present in said scan field, and forautomatically producing scan data indicative of said detected light, (5)a scan data processing mechanism for processing produced scan data so asto detect and decode said bar code symbol when said bar code is presentin said scan field and for automatically producing symbol character datain a form representative of said decoded bar code symbol, (6) a controlmechanism for automatically controlling the operation of at least two ofsaid laser beam generator, said laser beam scanning mechanism, and saidscan data processing mechanism, (7) a data packet construction mechanismfor constructing a data packet using said symbol character data producedfrom said scan data processing mechanism; (8) a carrier signalgeneration mechanism for generating an electromagnetic carrier signal;(9) a carrier signal modulation mechanism for modulating said carriersignal using said data packet, and (10) a carrier signal transmittingmechanism for transmitting said modulated carrier signal over a datatransmission range; and (B) a base unit positionable within the datatransmission range and including: (1) a carrier signal receivingmechanism for receiving said modulated carrier signal transmitted fromsaid carrier signal transmitting mechanism, (2) a carrier signaldemodulation mechanism for demodulating said modulated carrier signalsignal so as to recover said data packet, (3) a data packet processingmechanism for processing said recovered data packet so as to recoversaid symbol character data therefrom, (4) a data packet bufferingmechanism for buffering said symbol character data recovered from saiddata packet processing mechanism, and (5) an acknowledgment signalproducing mechanism for automatically producing, in response to therecovery of said symbol character data, an acknowledgment signalperceptible to the user of said automatic bar code symbol reading devicewhen said user is situated within said data transmission range, so as toinform said user that said symbol character data processed by said scandata processing mechanism has been received and recovered at said baseunit.
 3. A bar code symbol reading system comprising: a portable barcode symbol reader including: (a) a housing and (b) a mechanism forreading a bar code symbol on an object and for producing symbolcharacter data representative of the bar transmission range, so as toinform said user that said symbol character data processed by said scandata processing mechanism has been received and recovered at said baseunit.
 3. A bar code symbol reading system comprising: a portable barcode symbol reader including: (a) a housing and (b) a mechanism forreading a bar code symbol on an object and for producing symbolcharacter data representative of the bar code symbol; and anelectronically-passive target affixed to the housing which is detectableby an invisible interrogation field created at a point of interrogationwithin a working environment.
 4. A portable bar code symbol readingsystem for desktop use, comprising: a hand-graspable housing havingphysical dimensions which permit the hand-graspable housing to besubstantially grasped within the palm of a user's hand, thehand-graspable housing further including: a bottom surface for contactwith the desktop during bar code symbol reading operations, a viewingaperture formed in the bottom surface, and a light transmission aperturethrough which optical energy can exit and enter said hand-graspablehousing, wherein a bar code symbol, on an object supported on thedesktop surface, is viewable by the user along a line of sight extendingfrom said viewing aperture to the viewer's eye; and a bar code symbolreading mechanism disposed in said hand-graspable housing for readingsaid viewable bar code symbol, and for producing symbol character datarepresentative of the bar code symbol.
 5. An automatic bar code symbolreading device comprising: a housing including a removable attachmentmechanism for removably attaching the housing to the arm of a user, thehousing having a light transmission window permitting the entry and exitof optical energy; an automatic bar code symbol reading mechanism in thehousing for automatically reading a bar code symbol on an objectdisposed in at least a portion of a scan field defined external to thehousing, and for automatically producing symbol character datarepresentative of the bar code symbol; and a wireless data transmissionmechanism in the housing for generating and transmitting anelectromagnetic carrier modulated by the produced symbol character data.6. A desktop base unit comprising: a radio receiver for receiving amodulated electromagnetic carrier signal transmitted from a portable barcode symbol reading device and for demodulating said modulated carriersignal to retrieve bar code symbol character data; and an acousticalacknowledgment signal generator for producing an audible acousticalacknowledgment signal upon retrieval of the bar code symbol characterdata by the radio receiver.
 7. A desktop base unit for receiving symbolcharacter data transmitted as data packets over a modulatedelectromagnetic carrier signal, the desktop base unit comprising: aradio receiver for receiving the modulated electromagnetic carriersignal transmitted from a portable bar code symbol reading device; thereceiver including a carrier signal demodulator for demodulating saidmodulated carrier signal and retrieving the symbol character data; anacoustical acknowledgment signal generator for generating an audibleacoustical acknowledgement signal upon retrieval of the symbol characterdata from the carrier signal demodulator; a keyboard input port forreceiving keyboard output data produced from a keyboard device; a datatransmission mechanism for selectively transmitting at least one of:(a)the retrieved symbol character data, and (b) the keyboard output data,to an input port of a host device; and a control mechanism forcontrolling the operation of the acoustical acknowledgment signalgenerator and the data transmission mechanism.
 8. An automatic bar codesymbol reading device comprising: a housing having an opticaltransmission aperture and an interior volume of approximately 1.7 cubicinches or less; an object detector in the housing for detecting anobject located within at least a portion of a scan field definedexternal to the optical transmission aperture, and for automaticallygenerating a first activation signal indicative of the detection of theobject in at least a portion of the scan field; a scan data producingmechanism in the housing for producing scan data from the detectedobject located in the scan field, the scan data producing mechanismincluding: (a) a laser beam source in the housing for producing a beamof optical energy, and (b) a laser beam scanner for projecting the beamthrough the optical transmission aperture and for repeatedly scanningthe beam across the scan field, such that the beam is incident upon abar code symbol on the detected object, and (c) an optical detector fordetecting optical energy reflected off the bar code symbol and passingthrough said optical transmission aperture, and for automaticallyproducing scan data indicative of the detected optical energy; a barcode symbol detection circuit in the housing for processing producedscan data so as to detect the bar code symbol on the detected object,and for automatically generating a second activation signal in responseto the detection of the bar code symbol; a programmed microprocessor inthe housing for processing produced scan data so as to decode saiddetected bar code symbol, and for automatically producing symbolcharacter data representative of the decoded bar code symbol in responseto the decoding of the detected bar code symbol; and a system controlmechanism for automatically activating the scan data producing mechanismand the bar code symbol detection circuit for up to a firstpredetermined time period in response to the generation of the firstactivation signal, and for automatically activating said scan dataproducing mechanism and the programmed microprocessor for up to a secondpredetermined time period in response to the generation of the secondactivation signal.
 9. A portable bar code symbol reading devicecomprising: a hand-supportable housing of lightweight, compactconstruction; a bar code symbol reading engine within thehand-supportable housing, the bar code symbol reading engine including areceiver for receiving a data packet modulated electromagnetic carriersignal transmitted from a portable bar code symbol reading device; thereceiver including a carrier signal demodulator for demodulating themodulated carrier signal and for recovering the symbol character data; adata storage mechanism for storing the recovered symbol character data;an acoustical acknowledgment signal generator for generating an audibleacoustical acknowledgment signal upon recovering the symbol characterdata from the carrier signal demodulator; and a data transmissionmechanism in the compact housing for transmitting the recovered symbolcharacter data from the data storage mechanism to an input port of ahost device.
 10. A portable data collection device for receiving symbolcharacter data transmitted over a data packet modulated electromagneticcarrier signal, the portable data collection device comprising: acompact housing of lightweight construction; a receiver in the compacthousing for receiving the data packet modulated electromagnetic carriersignal transmitted from a portable bar code symbol reading device; acarrier signal demodulator in the compact housing for demodulating themodulated carrier signal and recovering the symbol character data; adata storage mechanism for storing the recovered symbol character data;an acoustical acknowledgment signal generating mechanism in the compacthousing for producing an audible acoustical acknowledgment signal uponrecovering the symbol character data from the carrier signaldemodulator; and a data transmission mechanism in the compact housingfor transmitting the recovered symbol character data from the datastorage means to an input port of a host device.
 11. A method ofreceiving symbol character data transmitted over a data packet modulatedelectromagnetic carrier signal, the method comprising the steps of: (a)receiving, at a base unit, a data packet modulated electromagneticcarrier signal transmitted from a portable bar code symbol readingdevice; (b) demodulating, at said base unit, the modulated carriersignal and recovering the symbol character data from the demodulatedcarrier signal; (c) storing, in said base unit, the recovered symbolcharacter data; and (d) generating, at said base unit, an audibleacoustical acknowledgment signal after recovering the symbol characterdata.
 12. A method of reading bar code symbols, the method comprisingthe steps of: (a) reading a bar code symbol on an object present in atleast a portion of a scan field defined externally with respect to aportable bar code symbol reading device, and automatically producingsymbol character data in a form representative of the bar code symbol;(b) using the produced symbol character data to construct a data packetwithin the bar code symbol reading device; (c) generating anelectromagnetic carrier signal within the bar code symbol readingdevice; (d) modulating the generated carrier signal using theconstructed data packet; (e) transmitting the modulated carrier signalfrom the portable bar code symbol reading device over a datatransmission range; (f) receiving the transmitted modulated carriersignal at a base unit positioned within the data transmission range ofthe portable bar code symbol reading device; (g) demodulating themodulated carrier signal at the base unit so as to recover the datapacket; (h) processing the recovered data packet so as to recover thesymbol character data therefrom; and (i) in response to the recovery ofthe symbol character data, automatically producing from the base unit,an acoustical acknowledgment signal perceptible to the user of theportable bar code symbol reading device when said user is situatedwithin the data transmission range, so as to inform the user that thesymbol character data produced by the scan data processing means hasbeen received and recovered at the base unit.